因为改名后文件名一样,所以你要确保每个子文件夹里面最多只有一个txt文件哦
@echo off
for /f "delims=" %%f in ('dir /b /s D:\*.txt') do (
for /f "tokens=2 delims=:\" %%a in ('echo %%f') do ren "%%f" "%%a.txt"
)
这是读取utf8文本
Dim Mazmun As String
Dim strFileName As String
strFileName = "c:\aa.txt"
Dim a
Set a = CreateObject("ADODB.Stream")
a.Charset = "utf-8"
a.Open
a.LoadFromFile strFileName
Mazmun = a.ReadText
a.Close
MsgBox Mazmun
下面是更改编码:
Dim Mazmun As String
Dim strFileName As String
strFileName = "c:\aa.txt"
Dim a
Set a = CreateObject("ADODB.Stream")
a.Charset = "utf-8"
a.open
a.LoadFromFile strFileName
Mazmun = a.ReadText
a.Close
Dim stm
Set stm = CreateObject("adodb.stream")
stm.Type = 2
stm.mode = 3
stm.Charset = "gb2312"
stm.open
stm.WriteText Mazmun
stm.SaveToFile strFileName, 2
stm.flush
stm.Close
Set stm = Nothing
MsgBox "utf8转换了GBK
同意楼上的说法