美好的一天
我需要有关将 ANSI TXT 文件转换为 UTF8 txt 文件的帮助。 使用 Foxpro 作为编程语言。或Xbase
问题是我正在使用 Foxpro 创建并写入 txt 文件,但我需要将该文件保存为 UTF8,因为它应该被另一个系统读取。
mycursor 是一个别名,使用该别名的 StrToFile() 是没有意义的。也许您想要实现的目标是:
StrToFile( Strconv(FileToStr( "c:\test.txt" ),9), "c:\test_utf8.txt" )
通过查看我上面建议的 Google 搜索结果,我发现以下内容:
func utf8encode( lcString )
local lcUtf, i
lcUtf = ""
for i = 1 to len(lcString)
c = asc(substr(lcString,i,1))
if c < 128
cUtf = cUtf+chr(c)
else
cUtf = cUtf+chr(bitor(192,bitrshift(c,6)))+chr(bitor(128,bitand(c,63)))
endif
next
return cUtf
注意:这不是我自己的代码,我还没有测试过它,但其他网站上的海报表明它可以在他们使用的旧版 Foxpro 中运行。
如果代码需要修改才能为您工作,我也不会感到太惊讶。
编辑:显然该代码只是一个 FUNCTION() ,它将接收预期的字符串,然后将其转换为 UTF8。
完成后,它会将字符串返回到调用例程,然后调用例程需要使用 VFP 的 STRTOFILE() 函数将字符串转换为文件。
或者,如果您使用的是 VFP9,您可以使用 STRCONV() 进行字符串转换。 STRCONV( ) 函数
祝你好运
Deu certo。所以请正确对待 lcutf e já 时代。 2024 年 e esse post ajudando os últimos sobreviventes dessa linguagem maravilhosa.