2013-07-26 68 views
0

嗨,大家好我使用的是流標記者包含如何檢測使用StreamTokenizer極在Java

ž

Z(澤解析文本文件中的空行;在英國常見的是,和在美國有時,ZED;以前, 也,IZ「zêrd)

Defn:Z,英文字母的第26和最後一個字母,是 聲樂輔音。它來自拉丁文字母Z,它來自希臘字母表中的 ,這來自閃米特族的來源。最終的起源可能是埃及人。在詞源學上,它與s,y和j密切相關的最多 ;如在玻璃,釉; E.軛,Gr。 yugum; E.熱心,嫉妒。見指南發音,§§273,274

我的代碼

public int[] getlineno(){ 
try { 
      BufferedReader in = new BufferedReader(new FileReader(url)); 
      StreamTokenizer st = new StreamTokenizer(in); 
      st.eolIsSignificant(true); 
      Vector v=new Vector(); 
      st.commentChar('#'); 
      scan: 
      while (true) { 
       switch (st.nextToken()) { 
        case StreamTokenizer.TT_EOF: 
         break scan; 

        case StreamTokenizer.TT_WORD: 
         break; 

        case StreamTokenizer.TT_NUMBER: 
         break; 

        default: 
         if(st.sval==null){ 
         System.out.println(i+" "+st.sval); 
         v.add(st.lineno()); 
         }break; 

       } 
      } 
      int linesno[]=new int[v.size()]; 
      for(int i=0;i<v.size();i++){ 
       int line=Integer.parseInt(v.get(i).toString()); 
       linesno[i]=line; 
      } 
      return linesno; 
     } catch (Exception ex) { 
      return null; 
     } 

}

請幫我用streamtokenizer.class

+1

請幫助我們和你自己的代碼,你已經嘗試過? –

+0

我縮進了文本,使其更具可讀性。大膽的'**'標記是必需的嗎? – 2013-07-26 04:26:27

+0

空白行可以只是一個新行char,行尾char,後跟一個新行char,或者只是一行空格。我希望你現在可以解決這個問題。 – Rakesh

回答

1

有一個表格來檢測空白行StringTokenizer構造函數接受字符串,分隔符列表和一個布爾值,指示分隔符是否應作爲自己的權限返回。如果使用這種形式的構造函數,nextToken()方法將以適當的順序將其他的標記返回給你的代碼的新行字符(假設它是你的分隔符之一)。你必須添加邏輯來確定哪些標記是分隔符,哪些是「真實」標記。