UTF-8 なテキストファイルを読み込んで、
UTF-8 なURLエンコーディングをして、
UTF-8 なテキストファイルへ書き出す。


import java.io.*;
import java.nio.charset.*;
import java.net.*;
 
public class MyURLEncoder {
 
  public static void main(String[] args) throws Exception {
 
    String input = args[0];
    String output = args[1];
 
    Charset charset = Charset.forName("UTF-8");
 
    // stream for reading
    FileInputStream fis = new FileInputStream(input);
    InputStreamReader isr = new InputStreamReader(fis, charset); 
    BufferedReader br = new BufferedReader(isr);
 
    // stream for writing
    FileOutputStream fos = new FileOutputStream(output);
    OutputStreamWriter osw = new OutputStreamWriter(fos, charset); 
    BufferedWriter bw = new BufferedWriter(osw);
    
    // reading and writing
    String line; 
    while((line = br.readLine()) != null){
      bw.write(URLEncoder.encode(line, "UTF-8"));
      bw.newLine();
    }
 
    br.close();
    bw.close();
  }
 
}

tags: zlashdot Java Java

Posted by NI-Lab. (@nilab)