java - 如何使用java更改文本文件编码字符集

标签 java character-encoding

如主题所示。如何用不同的字符集重写文件?

在哪里可以找到可用的编码 - 最终静态整数?

    FileInputStream fis = new FileInputStream(inputFile);
    InputStreamReader isr = new InputStreamReader(fis, inputEncoding);
    BufferedReader in = new BufferedReader(isr);

    FileOutputStream fos = new FileOutputStream(outputFile);
    OutputStreamWriter osw = new OutputStreamWriter(fos, outputEncoding);
    BufferedWriter out = new BufferedWriter(osw);

    String line = in.readLine();
    out.write(line);

最佳答案

As in subject. How to rewrite the file with different charset?

我不确定你为什么问这个问题,因为你的代码看起来合法,尽管它只复制 1 行(并吞下换行符)。我不会使用 readLine(),而只是在循环中使用 read(),也许使用缓冲区。这样您就可以复制所有内容而无需修改/吞掉换行符。

<小时/>

Where are can find available encodings - final static ints?

作者:Charset#availableCharsets() .

SortedMap<String, Charset> availableCharsets = Charset.availableCharsets();
// ...

关于java - 如何使用java更改文本文件编码字符集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13041130/

相关文章:

java - HttpClient 连接被对等方重置 : socket write error

java - 有没有办法让 Timer.ScheduleAtFixedRate 更准确?

sql-server - SQL Server : set character set (not collation)

java - Struts setter方法错误的参数传递

java - 在 Java 中打印 Unicode

php - 将 Unicode 字符转换为等效的 ASCII 字符

ruby-on-rails - 给定字符集时,Rails 无法解析 Accept header

php - php mysql 字符编码

php - ' "turns out as\' 和\"

java - 用于拆分电子邮件地址的正则表达式(在 Java 中)