分享
 
 
 

批量修改同一个目录中的所有文本文件的方法

王朝other·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

在Temp/目录下,所有的*.txt文件.

我想把所有的文件中的一列数据去掉如:

a.txt -----> a.txt

a b 1 1 a 1 1

c d 2 2 c 2 2

e f 3 3 e 3 3

g h 4 4 g 4 4

i j 5 5 i 5 5

解决方法:

'批量处理文本文件的方法

'a:批量处理某一个目录下的文本文件

'b:批量修改文本文件中的第二列数据去掉

得到Temp/目录中的所有文本文件

Dim di As IO.DirectoryInfo

di = New IO.DirectoryInfo("F:\\Root\tbak")

Dim fi As IO.FileInfo

For Each fi In di.GetFiles("*.txt")

Dim s As String

Dim reader As IO.StreamReader

reader = New IO.StreamReader(fi.FullName)

s = reader.ReadToEnd

reader.Close()

'第一个文件处理操作

ProcessString(s, fi.FullName)

Next

--文件中处理过程

Public Sub ProcessString(ByVal content As String, ByVal FileName As String)

Dim reader As IO.StringReader

reader = New IO.StringReader(content)

Dim writer As IO.StreamWriter

writer = New IO.StreamWriter(FileName)

Dim line As String

line = reader.ReadLine()

While (line <> Nothing)

Dim ss As String()

ss = line.Split(" ")

--处理数租操纵

Array.Copy(ss, 2, ss, 1, ss.Length - 2)

writer.WriteLine(String.Join(" ", ss, 0, ss.Length - 1))

line = reader.ReadLine

End While

writer.Close()

reader.Close()

End Sub

--window Xp ,SQL_SERVER2000下测试通过!

---文件Copy,然后放到指定目录,删除原来目录文件

'60秒刷新页面,判断是否有r0011.txt文件

'如果r0011.txt文件不存在,在指定目录中去Copy文本文件,设置当前时间为:文本文件时间+"23:59:00",Copy文件到

' C:\,并更名为:r0011.txt文件

'等待60秒,循环

'每30秒刷新一次

Dim Lsql As String

Response.AddHeader("Refresh", "30")

If IO.File.Exists("F:\Root\r0011.txt") Then

Response.Write("数据正等待处理.......")

Else

'从源目录中拷贝文件

Dim di As IO.DirectoryInfo

di = New IO.DirectoryInfo("F:\\Root\tbak")

Dim fi As IO.FileInfo

For Each fi In di.GetFiles("*.txt")

If IO.File.Exists("F:\Root\r0011.txt") Then

'如果上一个文件还没入库,则等待

Response.Write("上一个文件正在进行入库处理.......")

Exit For

Else

Dim s, Year, Month, day As String

Dim reader As IO.StreamReader

reader = New IO.StreamReader(fi.FullName)

s = reader.ReadToEnd

'更新系统当然时间.

'a:得到年份

Year = "20" + Left(Right(fi.Name(), Len(fi.Name) - 1), 2)

'b:得到月份

Month = Right(Left(Right(fi.Name(), Len(fi.Name) - 1), 4), 2)

'c:得到日期

day = Right(Left(Right(fi.Name(), Len(fi.Name) - 1), 6), 2)

'设置系统时间

Lsql = " exec master..xp_cmdshell 'date " & day & "-" & Month & "-" & Year & "' "

Lsql = Lsql + "exec master..xp_cmdshell 'time 23:50:00' "

ZeHua.Data.DataHelper.exeSQL("Provider=SQLOLEDB;Server=(local);database=IDBS;user id=sa;password=", Lsql)

ProcessString(s, "F:\Root\r0011.txt")

reader.Close()

'如果文件存在,删除文件

If IO.File.Exists(fi.FullName) Then

IO.File.Delete(fi.FullName)

End If

End If

Next

&

[1] [2] 下一页

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有