2012-05-21 22 views
0

我的文件程序第一次運行得很好。但之後,當我想運行它顯示錯誤。可能是什麼原因?文件程序顯示錯誤

import java.io.FileInputStream; 
import java.io.IOException; 

public class FileSentenceRead { 

    /** 
    * @param args 
    * @throws IOException 
    */ 
    public static void main(String[] args) throws IOException { 
     // TODO Auto-generated method stub 
     /*Scanner sn=new Scanner(System.in); 
     System.out.println("Enter file name"); 
     String fname=sn.next();*/ 
     FileInputStream fis=new FileInputStream("textfile.text"); 
     int size=fis.available(); 
     byte bt[]= new byte[size]; 
     fis.read(bt); 
     String pr=new String(bt); 
     System.out.println(pr); 
     String[] pr1=pr.split("\\s|\\."); 
//  @SuppressWarnings("rawtypes") 
//  HashSet set=new HashSet(); 
     StringBuffer s=null; 
     StringBuffer ss=new StringBuffer(); 
     for(int i=0;i<pr1.length;i++){ 
      s= new StringBuffer(pr1[i]); 
//   System.out.print(s.reverse()+" "); 
      s=s.reverse(); 
      ss.append(s+" "); 
     } 
     System.out.println(ss); 
    } 
} 

這是我的錯誤信息

at java.security.AccessController.doPrivileged(Native Method) 
at java.net.URLClassLoader.findClass(Unknown Source) 
at java.lang.ClassLoader.loadClass(Unknown Source) 
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) 
at java.lang.ClassLoader.loadClass(Unknown Source) 
+2

您已經發布了堆棧跟蹤,但沒有發佈錯誤消息。發佈消息以及 –

+1

一個好的做法是在你打開一個時關閉流。 –

+0

它顯示主線程中的異常。找不到主要的類:textfile.text。程序將會退出。 – Bamadeva

回答

1

找不到主類:textfile.text

它看起來像你沒有執行正確的命令行。你的命令行調用應該是這樣的(假設你是從哪裏產生的類執行它):

java -cp . FileSentenceRead 

,或者如果你把它放在一個包:

java -cp . com.foo.mypackage.FileSentenceRead 

如果從運行Eclipse中,您可能已將程序參數放入VM參數中,這會產生相同的錯誤。然後,只需將您的程序參數移動到正確的字段中,並將其從VM參數字段中移除即可。

+0

Hei Potel您正確的。它現在工作謝謝你4寶貴的時間來幫助我.... Hv一個偉大的一天...如果你不介意你的個人電子郵件ID是什麼。 – Bamadeva

0

你如何運行你的課程。您的主要類名是FileSentenceRead,而不是您在錯誤消息中看到的textfile.text。我運行你的代碼,它始終運行在我的機器上。

可能是您的啓動配置或您用來運行它的命令有問題。

+0

Mera系統我運行nehi hota他pata nehi kya問題嘿? Kuch的想法...請 – Bamadeva

+0

我通過右鍵單擊運行這個類並在Eclipse中作爲Java應用程序運行。它第一次運行,我關閉eclipse工具,然後我打開運行,那時它不會工作.... – Bamadeva

+0

好吧,所以檢查你的'運行配置'它創建運行此,名稱* Main類*應該是'FileSentenceRead'而不是'textfile.text'。 –

0

Himanshu Mohta是正確的。我已經檢查了代碼

FileInputStream fis = new FileInputStream(「c:\\ tmp \\ textfile.text」);

一些文字在這裏在文本文件中的文本,並將它返回:

一些文字在這裏

EMOS txet ereh

所以,沒有錯了代碼,查你的文件系統文件夾安全讀/寫權限