簡體   English   中英

在NetBeans上找不到文件

[英]Cannot find file on netbeans

我正在嘗試訪問數據文件以獲取有關“ Quiz”應用程序的問題和解答。 如果我從桌面上的文件訪問文件,則可以正常工作。 如果將文件拖放到netbeans中,似乎無法訪問它。 該文件與其他類一起在“測驗”包中。 這是有效的代碼,但我想使用netbeans文件。

String fileName = "C:/Users/Michael/Desktop/QUIZ.DAT";
 try {
        //Make fileReader object to read the file
        FileReader file = new FileReader(new File(fileName));
        BufferedReader fileStream = new BufferedReader(file);
    } catch (Exception e) {
        System.out.println("File not found");
    }

為了嘗試訪問netbeans上的文件,我使用了它,但是找不到它。

String fileName = "quiz/Quiz.DAT";

試試這個,其中MyClass是類名。 我假設quiz.dat文件在該類的同一包中。

InputStream f = MyClass.class.getResourceAsStream("QUIZ.DAT");
BufferedReader bReader = new BufferedReader(new InputStreamReader(f));
StringBuffer sbfFileContents = new StringBuffer();
String line = null;
while ((line = bReader.readLine()) != null) {
    sbfFileContents.append(line);
}
System.out.println(sbfFileContents.toString());

JJPA提供了正確的代碼。 但是讓我更好地增強它。

Project
   com.io
      test.txt
   com.root
      AccessFile.java

這是我的程序結構。 我想從io包訪問文件,所以這是代碼。

package com.root;

import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;

public class AccessFile {
    public static void main(String args[]){
        try{
            InputStream f = AccessFile.class.getResourceAsStream("../io/test.txt");
            BufferedReader bReader = new BufferedReader(new InputStreamReader(f));
            StringBuffer sbfFileContents = new StringBuffer();
            String line = null;
            while ((line = bReader.readLine()) != null) {
                sbfFileContents.append(line);
            }
            bReader.close();
            f.close();
            System.out.println(sbfFileContents.toString());
        }catch(Exception e){
            e.printStackTrace();
        }
    }
}

如果您試圖在JAVA項目中讀取文件,而netbeans找不到該文件,則將該文件放在項目的根目錄中,它應該可以找到它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM