0

私の現在のディレクトリには、ファイル register.xml と MySaxparser.java があります。しかし、 new File("register.xml"); を使用すると、依然として File not found エラーが発生します。

私の cwd は: C:\Users\nb\workspaceAndroid\MySaxParser

WindowsでJava 1.7、Eclipseプラットフォームを使用しています

  public static void main(String[] args) {
        File file1 = new File("register.xml");
          if(file1.exists()){
              System.out.println("File existed");
          }else{
              System.out.println("File not found!");
          }
   System.out.println("Working Directory = " +  System.getProperty("user.dir"));

出力:

File not found!
Working Directory = C:\Users\nb\workspaceAndroid\MySaxParser

以下の行も試しましたが、うまくいきませんでした。

File file1 = new File("C:\\Users\\nb\\workspaceAndroid\\MySaxParser\\register.xml");
4

2 に答える 2

3

getClass().getResource() を使用して、クラスパス内のファイルを読み取ります。

URL url = getClass().getResource("register.xml");

完全なコード:

URL url = getClass().getResource("register.xml");
File file = new File(url.toURI());
于 2013-09-26T16:58:06.880 に答える
3

Eclipse Java プロジェクトの現在の作業ディレクトリは、ファイルが保持されているディレクトリとは異なります

ディレクトリ C:\Users\nb\workspaceAndroid\MySaxParser\src

作業ディレクトリ: C:\Users\nb\workspaceAndroid\MySaxParser

ファイル パスが作業ディレクトリからの相対パスであることを確認してください。

于 2013-09-26T16:35:02.023 に答える