在Java应用程序的类中读取我的csv文件时出错

在Java应用程序的类中读取我的csv文件时出错,java,xml,csv,Java,Xml,Csv,我需要从与主类相同的类中读取sample.csv文件。 下面您可以看到结构 这是我的代码,但是当我运行它时,它给了我一个错误,sample.csv找不到 public int convertFile(String csvFileName, String xmlFileName, String delimiter) { int rowsCount = -1; BufferedReader csvReader;

我需要从与主类相同的类中读取sample.csv文件。 下面您可以看到结构

这是我的代码,但是当我运行它时,它给了我一个错误,sample.csv找不到

public int convertFile(String csvFileName, String xmlFileName,
                    String delimiter) {
        int rowsCount = -1;
        BufferedReader csvReader;
        try {
            Document newDoc = domBuilder.newDocument();
            // Root element
            Element rootElement = newDoc.createElement("XMLCreators");
            newDoc.appendChild(rootElement);
            // Read csv file
            csvReader = new BufferedReader(new FileReader(csvFileName));
            CSVReader reader = new CSVReader(new FileReader("sample.csv"));
            //CSVReader reader = new CSVReader(csvReader);
            String[] nextLine;
            int line = 0;
            List<String> headers = new ArrayList<String>(5);
            while ((nextLine = reader.readNext()) != null) {
....

public int convertFile(字符串csvFileName,字符串xmlFileName,
字符串分隔符){
int rowsunt=-1;
缓冲读卡器csvReader;
试一试{
Document newDoc=domguilder.newDocument();
//根元素
Element rootElement=newDoc.createElement(“XMLCreators”);
newDoc.appendChild(根元素);
//读取csv文件
csvReader=newbufferedreader(newfilereader(csvFileName));
CSVReader reader=newcsvreader(newfilereader(“sample.csv”);
//CSVReader reader=新CSVReader(CSVReader);
字符串[]下一行;
内线=0;
列表标题=新的ArrayList(5);
而((nextLine=reader.readNext())!=null){
....

有人能告诉我问题出在哪里吗?

没有相对路径或绝对路径,它与“当前”目录直接相关。因此,.csv文件在某个包中并不重要,但当应用程序启动时“工作”确实重要目录正是包含该文件的目录。 如果您正在使用Eclipse,请转到用于启动应用程序的运行配置(运行菜单->运行配置…),参数选项卡。

你们可以得到这样的路径

URL url = YourClassName.class.getResource("sample.csv");
FileReader fileReader = new FileReader(url.getFile());