如何将普通的txt文本格式转换成ASCII啊?

如何将普通的txt文本格式转换成ASCII啊?,第1张

如果你装了jdk,文件夹bin里有个navtive2ascii.exe文件,可以使用这个去转换

在做Java开发的时候,常常会出现一些乱码,或者无法正确识别或读取的文件,原因是编码方式的不一致。native2ascii是sun

java

sdk提供的一个工具。用来将别的文本类文件(比如*.txt,*.ini,*.properties,*.java等等)编码转为Unicode编码。

一.获取native2ascii

安装了jdk后,假如你是在windows上安装,那么在jdk的安装目录下,会有一个bin目录,其中native2ascii.exe正是。

二.使用方法

命令行格式:

native2ascii.exe -[options] [inputfile [outputfile]]

其中知枯:

-[options]表示命令开关,有两个选项可供选择:

-reverse:用Latin-1或Unicode编码把文件转换成本地编码格式

-encoding encoding_name:要把文件转换的目标编码

inputfile:表示输入文件全名。

outputfile:输出文件名。如果缺少此参数,将输出到控制台。

具体介绍如下:

1.命令行交互方式

在这种方式下通过手工输入字符实时在Console中实现交互转码。退出按Ctrl+c

1)本地编码→Latin编码:

 直接敲入native2ascii.exe,程序光标会停在下一行,这时你可以直接敲入想要转换的字符,例如:

D:\jdk1.5.0_06\bin>native2ascii.exe

  我们

  \并或u6211\u4eec

2)Latin-1编码→指定编码:

 直接敲入native2ascii.exe -reverse,程序光标会停在下一行,这时你可以直接敲入想要转换的字符,例如:

D:\jdk1.5.0_06\bin>native2ascii.exe -reverse

  \u6211\u4eec

  我们

2.文件转换方式

在这种方式下通过指定inputfile和outputfile来实现转码。

1)指定编码→Latin编码:绝猛伍

例如:

D:\jdk1.5.0_06\bin>native2ascii.exe -encoding utf8 abc.txt bcd.txt

2)Latin-1编码→指定编码:

例如:

D:\jdk1.5.0_06\bin>native2ascii.exe -reverse utf8 abc.txt bcd.txt

#include

"stdio.h"

void

main()

{

FILE*

fin

=

NULL//输入文件

FILE*

fout

=

NULL//输出文件

char

c

fin

=

fopen("readme.txt",

"r")

if(fin

==

NULL)

{

printf("输入链慎文件打开错粗败误!\n")

return

}

fout

=

fopen("out.txt",

"w")

if(fout

==

NULL)

{

printf("输出文件打开错误!\n")

return

}

c

=

fgetc(fin)

while(c

!=

EOF)

{

fputc(c,

fout)

printf("%c",

c)//对于这句来说,如果是非中文,输出到屏幕会有问题的!

c

=

fgetc(fin)

}

fclose(fin)

fclose(fout)

printf("输入输出结束!\n")

}

你自己试岩唤颤试,应该可以的

猜测啊,你这批文件实际是Unicode编码,因为记事本能打开。

如果你有UE,那就可以使橡物用 UE的Macro功能方便的完成这项工作。

简单来说,你可以先录制一个宏:芦肆

1.打开一个文件; (支持 *.*)

2.选择另存为;

3.选择文件类型为 'ascii' ;

4. 保存。

然后你可以修改这个宏,可陪如轿以改第一步,打开所有文件,然后循环2,3,4.。。。。重复重复再重复。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12139922.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存