【问题标题】:Counting each line in a textfile计算文本文件中的每一行
【发布时间】:2014-07-14 00:33:40
【问题描述】:

所以我有点坚持这一点。基本上我在一个目录中有一个文本文件,在该文本文件中,我在每一行中添加了不同的文本。我正在尝试使用它来计算该文本文件中有多少行。我正在使用IsolatedStorageFile 来执行此操作,这就是我访问它的方式。

到目前为止,我已经得到了这个,但它不起作用:

Using isoComments As IsolatedStorageFileStream = New IsolatedStorageFileStream("textfile1.txt", FileMode.Open, isoStore)
        Using readerComments As StreamReader = New StreamReader(isoComments)
            For Each line In readerComments.ReadLine
                MessageBox.Show(line.ToString.Count)
            Next
        End Using
End Using

结果不是行数,而是每行中的字符数。这不是我想要的我想要那个特定文本文件中的行数。有没有人可以帮我解决这个问题。

【问题讨论】:

  • line.ToString 返回当前行字符串,因此当使用此 line.ToString.Count 时,您将获得该字符串的长度。所以基本上你只需要计算 line 。解决这个问题。尝试删除循环内的消息框

标签: vb.net isolatedstorage lines counting


【解决方案1】:

类似这样的:

Dim iLineCount As Integer
iLineCount = 0

Using isoComments As IsolatedStorageFileStream = 
New IsolatedStorageFileStream("textfile1.txt", FileMode.Open, isoStore)
    Using readerComments As StreamReader = New StreamReader(isoComments)
        For Each line In readerComments.ReadLine
            iLineCount=iLineCount+1
        Next
        MessageBox.Show(iLineCount)
    End Using
End Using

【讨论】:

  • 似乎是计算第一行中的文本数而不是所有行。
  • 不,您计算了每一行的文本数量,而不仅仅是第一行。
  • 似乎无法得到结果。在我的文本文件中,它看起来像这样:8F2689723C3745 A4BBB8892DF843 C2199855351740 1D1EDF3D29B14E 每个都在不同的行中,因为有 14 个字符,它将显示 14。
  • 您可以在原始问题中发布带有格式的示例文本文件吗? “行”实际上只是一个回车符。如果您的文本文件有 14 个回车符,则应该返回 14。
  • 我决定删除旧方法并添加一个新方法,它可以完美运行。抱歉通知晚了,有时间我会更新我的答案。不过谢谢你的帮助:)
【解决方案2】:

所以我设法解决了这个问题。我最初的想法是获取文本文件的编辑次数,因此我认为在该文本文件的每一行中添加一些内容并计算每一行会有所帮助,但我找不到解决方法。

我所做的是我添加了一个计数器,每次保存时都会增加 1,然后在读取时添加 +1。这样我就有了一个准确的编辑次数,因为每次编辑文本文件时,就像前面提到的那样,它像一个计数器一样增加 1。所以如果用户编辑文本文件大约 12 次,那么数字 12 在文件,当 ser 决定再次编辑文本文件时将读取该文件,一旦他将 +1 保存到 12 将添加到 13。

我用这个方法加一:

Using isoStream As IsolatedStorageFileStream = New IsolatedStorageFileStream("textfile.text", FileMode.CreateNew, isoStore) Using writer As StreamWriter = New StreamWriter(isoStream)
      Dim i As Integer
      i += 1
      writer.WriteLine(i)
  End Using
End Using

【讨论】:

    猜你喜欢
    • 2017-01-10
    • 1970-01-01
    • 2013-11-25
    • 2020-11-28
    • 1970-01-01
    • 2013-07-07
    • 1970-01-01
    • 1970-01-01
    • 2011-03-29
    相关资源
    最近更新 更多