Java 字符集编码
Posted linlf03
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 字符集编码相关的知识,希望对你有一定的参考价值。
1、NioTest13_In.txt文件内容拷贝到NioTest13_Out.txt文件中
public class NioTest13 public static void main(String[] args) throws Exception String inputFile = "NioTest13_In.txt"; String outFile = "NioTest13_Out.txt"; RandomAccessFile inputRandomAccessFile = new RandomAccessFile(inputFile,"r"); RandomAccessFile outputRandomAccessFile = new RandomAccessFile(outFile,"rw"); long inputLength = new File(inputFile).length(); FileChannel inputFileChannel = inputRandomAccessFile.getChannel(); FileChannel outputFileChannel = outputRandomAccessFile.getChannel(); MappedByteBuffer inputData = inputFileChannel.map(FileChannel.MapMode.READ_ONLY, 0, inputLength); System.out.println("================================"); /*Charset.availableCharsets().forEach( (k,v) -> System.out.println(k + ", " + v); );*/ System.out.println("================================"); Charset charset = Charset.forName("iso-8859-1"); //utf-8 CharsetDecoder decoder = charset.newDecoder(); //字节数组转字符串 CharsetEncoder encoder = charset.newEncoder(); //字符串转字符数组 CharBuffer charBuffer = decoder.decode(inputData); ByteBuffer outputData = encoder.encode(charBuffer); outputFileChannel.write(outputData); inputRandomAccessFile.close(); outputRandomAccessFile.close();
2、创建"NioTest13_In.txt文件
3、执行后生成了NioTest13_Out.txt 文件
可以知道使用: Charset charset = Charset.forName("iso-8859-1"); //utf-8
使用iso-8859-1和utf-8,中文显示都是正常的
以上是关于Java 字符集编码的主要内容,如果未能解决你的问题,请参考以下文章