Java_UTF8 の変更点 - アールメカブ

アールメカブ


Java_UTF8 の変更点


[[Programming]]

以下のコードを utf-8-unix で保存し,コンパイルすると ez に関して警告が出るが,
コンソールで unicode3.txt (すべて特殊文字で "aouSaouS" の8文字のファイル) を
解析させると, aウムラウトと,eZ をちゃんと補足する.
 
ただしコンパイルオプションで utf-8 を指定すると特殊文字を補足しなくなる. 
 
 
 
 [ishida@amd treetagger]$ javac -encoding utf-8 unicode2.java
 
 [ishida@amd treetagger]$ javac unicode2.java
 
 [ishida@amd treetagger]$ java unicode2 unicode3.txt 
  umlaut
  esZ
  umlaut
  esZ
  8
 
 umlaut
 
 esZ
 
 umlaut
 
 esZ
 
 8
 
 [ishida@amd treetagger]$ 
 
コードは以下の通り
 
 java unicode2 unicode3.txt
 
 public class unicode2 {
   public static void main(String [] args){
    String filename = args[0];
    int count = 0;
 
  public static void main(String [] args){
 
   String filename = args[0];
 
   int count = 0;
 
   try{
     FileReader reader=new FileReader(filename);
     //String line;
     int charStr;
 
    FileReader reader=new FileReader(filename);
 
    //String line;
 
    int charStr;
 
    while((charStr=reader.read()) != -1){
 
  if((char)(charStr)=='a')
      System.out.println("umlaut");//aウムラウトを補足
   if((char)(charStr)=='S')
       System.out.println("esZ");// esZを補足
   count++;
 
     System.out.println("umlaut");//aウムラウトを補足
 
  if((char)(charStr)=='S')
 
      System.out.println("esZ");// esZを補足
 
  count++;
 
  /*
 
  System.out.print((char)charStr);
 
  System.out.println("char");
 
  System.out.print(charStr);
 
  System.out.println("int");
 
  */
 
   }
     reader.close();
    }catch(FileNotFoundException e){
    }
 
    reader.close();
 
   }catch(FileNotFoundException e){
 
    catch (IOException e){
    }
    System.out.println(count);// 文字数
   }
 
   catch (IOException e){
 
   }
 
   System.out.println(count);// 文字数
 
  }
 
 }