java 读取必须使用特定字符集解码的文件(在本例中为UTF-16 LE)。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 读取必须使用特定字符集解码的文件(在本例中为UTF-16 LE)。相关的知识,希望对你有一定的参考价值。

import java.io.*;
import java.nio.*;

public class UtfDemo {
    public static void main(String[] args) throws IOException {
        
        String filename = "C:\\Users\\mario\\Desktop\\SampleFile.xml";
        
        Charset utf = StandardCharsets.UTF_16LE;
        byte[] buffer = new byte[8192];
        int length;
        
        try (InputStream input = 
                new DataInputStream(new FileInputStream(new File(filename)))) {
            
            while ((length = input.read(buffer)) > -1) {
                // Specify length, or the final iteration will have crud left 
                // over from the previous read, if the current read doesn't 
                // manage to (coincidently) overwrite the entire buffer.
                System.out.print(utf.decode(ByteBuffer.wrap(buffer, 0, length)).toString());
            }
        }
        
        System.out.println();
    }
}

以上是关于java 读取必须使用特定字符集解码的文件(在本例中为UTF-16 LE)。的主要内容,如果未能解决你的问题,请参考以下文章

php 在特定订单状态之后奖励积分(在本例中为“已完成”)

将自定义样式附加到 GWT CellTable(在本例中为所有单元格)

一个bash脚本,用于使用bash脚本连接字符串并在同一文件中编辑一行

字符流

批处理文件:从 .csv 文件中读取浮点值

如何在不提取Java的情况下读取压缩文件的内容