如何将listview项目保存到VB6上的文本文件中

时间:2017-07-05 07:58:52

标签: listview text vb6

我的listview1中的数据是这样的:

listview

我想保存数量,直到从列表视图到.txt的总费用Coloum 但我不知道如何将其保存到.txt

我发现引用文件是另一个网站,他们使用了这段代码:

Private Sub testfile as String = application.startupPath & "\testfile.txt"

打印(点击)

Dim mywriter as new.IO.streamwriter(testfile)
    for eacy myItem as ListviewItem in Listview1.items
        mywriter.writeLine(myitem.text & "#" & myItem.SubItem(1).text & "#" & myitem.subitem(2).text)
    next
    mywriter.close()

但VB6无法编译此代码。 请帮帮我

1 个答案:

答案 0 :(得分:1)

ListItemsListSubItems Base 1 ,这意味着它们从索引1开始,您将按照将其添加到{的顺序找到它{1}}。

例如:产品的价格" a"在ListView中,因为第一列是ListView1.ListItems(2).SubItems(4)本身,您可以按如下方式获取:ListItem

因此,如果你的问题是关于打印到文件,你可能需要一些小的,可选的帮助函数,你可以随时保存在你的代码段库中,例如在ListView1.ListItems(2).Text中,并且(可能)重用

请记住,确实有很多方法可以完成任务,这只是一个例子。

module

现在要点:双击Public Function NormalizePath(path As String) As String ' Normalize a Windows path with Backslash Const DirSeparator = "\" If Right(path, 1) = DirSeparator Then NormalizePath = path Else NormalizePath = path & DirSeparator End If End Function Public Function Formatted(TextValue, FormatType, ColumnWidth) As String ' Make fixed length fields Dim Result As String, PlaceHolder As String Dim CurrencyValue As Currency PlaceHolder = Space(ColumnWidth) Select Case FormatType Case "Text" Result = Left(TextValue & PlaceHolder, ColumnWidth) Case "Integer" Result = Right(PlaceHolder & TextValue, ColumnWidth) Case "Currency" CurrencyValue = CCur(TextValue) Result = Right(PlaceHolder & Format(CurrencyValue, "0.00"), ColumnWidth) End Select Formatted = Result End Function 标记为打印收据并编写此代码:

CommandButton

将以下功能复制并粘贴到表单中:

PrintReceipt

如果你做得很好,你会在项目的路径中找到一个格式正确的收到数据副本。使用记事本打开文本文件,然后从菜单格式 - > 字体中选择固定宽度的字体,例如 Courier New 。你应该能够看到这样的东西:

enter image description here

您现在可以使用此文件执行的最酷的事情是将其作为订单确认发送回您的设备。

最终说明:

  • 熟悉并尝试理解术语:数量 Base 数量单价单位成本。他们各有不同 含义。 数量总是整数
  • 您还没有为您收到的数据分配任何标识符,所以我 相信你现在最大的问题就是如何跟踪所有的问题 收到消息,因为文件将始终被覆盖而没有 警告。如果您需要,由您来分析问题并找到 如何将您的文件名设置为有意义的唯一标识符,用于 例如: Receipt_0001.txt 或类似的东西。

快乐学习!