以编程方式将txt文件从ANSI转换为UTF-8

wle*_*end 9 java encoding file utf-8 text-files

我在这里需要你的帮助.我正在研究一个将txt文件中的数据转换为数据库的java应用程序,问题是该文件具有ANSI编码,我无法更改,因为它来自我的应用程序外部,当我将数据写入数据库我得到了一些"???" 内.我的问题是,如何将我从文件中读取的数据从ANSI转换为UTF-8,它可以处理那些已经满足的符号.我已经尝试过Byte []到String转换,但它没有用.

McD*_*ell 6

像这样使用打开解码阅读器:

Reader reader = 
   new InputStreamReader(inputStream, Charset.forName(encodingName));
Run Code Online (Sandbox Code Playgroud)

您应该使用的编码名称的Exaclty取决于写入文本文件的"ANSI"编码.您可以在此处找到Java 6支持的编码列表.如果它是一个英语系统,它可能会windows-1252.

正确地将数据写入数据库取决于正确配置数据库(有时)为JDBC驱动程序提供正确的配置.

您可以在此处此处阅读有关字符编码处理的更多信息.