import java.io.File;
import 
java.io.FileInputStream;
import java.io.FileOutputStream;
import 
java.io.InputStreamReader;
import java.io.OutputStreamWriter;
public class ChangeCode {
 public void changeFile() {
  File f = new 
File("d:/test.txt");
  try {
   FileOutputStream 
fos = new FileOutputStream(f);
   OutputStreamWriter ws = new 
OutputStreamWriter(fos, "gbk");
   String r = new 
String("测试编码轮换是否正确".getBytes(), 
"gbk");
   ws.write(r);
   ws.close();
   fos.close();
  } 
catch (Exception e) 
{
   e.printStackTrace();
  }
 }
 public void FileCode() {
  File file = new 
File("d:/test.txt");
  File file2 = new 
File("d:/test2.txt");
  try {
   FileInputStream 
fis = new FileInputStream(file);
   InputStreamReader sr = new 
InputStreamReader(fis);
   FileOutputStream fos = new 
FileOutputStream(file2);
   OutputStreamWriter wr = new 
OutputStreamWriter(fos, "utf-8");
   char[] ar = new 
char[1024];
   int len = 0;
   while ((len = 
sr.read(ar)) != -1) 
{
        wr.write(ar,0,len);
   }
   sr.close();
   fis.close();
   wr.close();
   fos.close();
  } 
catch (Exception e) 
{
   e.printStackTrace();
  }
 }
 public static void main(String[] args) 
{
  ChangeCode cge = new 
ChangeCode();
  cge.changeFile();
  cge.FileCode();
 }
}