Vb.net 15000行列表框以增量保存
我如何在列表框中提取15000行,并以100行的增量将它们保存到文件夹中的不同文本文件中。因此,我的列表框的前100行将保存到文件夹/List1.txt中,其中包含100行,以此类推。首先导入以下名称空间Vb.net 15000行列表框以增量保存,vb.net,listbox,save,increment,Vb.net,Listbox,Save,Increment,我如何在列表框中提取15000行,并以100行的增量将它们保存到文件夹中的不同文本文件中。因此,我的列表框的前100行将保存到文件夹/List1.txt中,其中包含100行,以此类推。首先导入以下名称空间 Imports System.Threading.Tasks 收集并转换列表框中的所有项目。用于获取屏幕上显示的每个对象的字符串表示形式 Dim items As List(Of String) = ( From o As Object In Me.ListBox1.Item
Imports System.Threading.Tasks
收集并转换列表框中的所有项目。用于获取屏幕上显示的每个对象的字符串表示形式
Dim items As List(Of String) = (
From o As Object
In Me.ListBox1.Items
Select Me.ListBox1.GetItemText(o)
).ToList()
定义文件路径。不要删除{0}
,因为这将被替换为“文件号”
设置循环索引。如果您有15000
项,则toExclusive
将设置为150
Dim fromInclusive As Integer = 0
Dim toExclusive As Integer = CType(Math.Ceiling(items.Count / 100.0R), Integer)
如果跳过(索引*100)
并获取100
,则运行for循环。将结果写入(新)文件
Dim fromInclusive As Integer = 0
Dim toExclusive As Integer = CType(Math.Ceiling(items.Count / 100.0R), Integer)
Parallel.For(
fromInclusive,
toExclusive,
Sub(index As Integer)
Dim lines As IEnumerable(Of String) = items.Skip((index * 100)).Take(100)
My.Computer.FileSystem.WriteAllText(
String.Format(path, (index + 1)),
String.Join(Environment.NewLine, lines),
False
)
End Sub
)