Translate Charset : Charset « I18N « Java






Translate Charset

    

import java.io.File;
import java.io.RandomAccessFile;
import java.nio.ByteBuffer;
import java.nio.CharBuffer;
import java.nio.MappedByteBuffer;
import java.nio.channels.FileChannel;
import java.nio.charset.Charset;
import java.nio.charset.CharsetDecoder;
import java.nio.charset.CharsetEncoder;

public class TranslateCharset {
  static public void main(String args[]) throws Exception {
    String inFilename = "inputFileName.txt";
    String inFileCharsetName = "InputFileCharSetName";
    String outFilename = "outputFileName.txt";
    String outFileCharsetName = "OutputFileCharSetName";

    File infile = new File(inFilename);
    File outfile = new File(outFilename);

    RandomAccessFile inraf = new RandomAccessFile(infile, "r");
    RandomAccessFile outraf = new RandomAccessFile(outfile, "rw");

    FileChannel finc = inraf.getChannel();
    FileChannel foutc = outraf.getChannel();

    MappedByteBuffer inmbb = finc.map(FileChannel.MapMode.READ_ONLY, 0, (int) infile.length());

    Charset inCharset = Charset.forName(inFileCharsetName);
    Charset outCharset = Charset.forName(outFileCharsetName);

    CharsetDecoder inDecoder = inCharset.newDecoder();
    CharsetEncoder outEncoder = outCharset.newEncoder();

    CharBuffer cb = inDecoder.decode(inmbb);
    ByteBuffer outbb = outEncoder.encode(cb);

    foutc.write(outbb);

    inraf.close();
    outraf.close();
  }
}

           
         
    
    
    
  








Related examples in the same category

1.List the Charset in your system
2.Converting Between Strings (Unicode) and Other Character Set Encodings
3.Charset encoding test
4.encoder and decoder use a supplied ByteBuffer
5.Detect non-ASCII characters in string
6.Displays Charsets and aliasesDisplays Charsets and aliases
7.Encode and DecodeEncode and Decode
8.extends CharsetDecoder to create Base64 Decoder
9.extends Charset to create Hex Charset
10.Get the default charset
11.Charset Toolkit
12.Defines common charsets supported in all Java platforms.
13.How to auto-detect a file's encoding