gpt4 book ai didi

java - 即使文件存在于 Java 中也没有这样的文件或目录错误

转载 作者:行者123 更新时间:2023-12-01 09:52:30 24 4
gpt4 key购买 nike

我是 Java 新手,我希望运行库 JGibbLDA。我按照文档要求,进入JGibbLDA-v.1.0根目录,输入命令:

java -mx512M -cp bin:lib/args4j-2.0.6.jar jgibblda.LDA -est -alpha 0.5 -beta 0.1 -ntopics 100 -niters 1000 -savestep 100 -twords 20 -dfile models/data/data.txt

但是出现错误:

Read Dataset Error: /models/data/data.txt (No such file or directory)
java.io.FileNotFoundException: /models/data/data.txt (No such file or directory)
at java.io.FileInputStream.open0(Native Method)
at java.io.FileInputStream.open(FileInputStream.java:195)
at java.io.FileInputStream.<init>(FileInputStream.java:138)
at java.io.FileInputStream.<init>(FileInputStream.java:93)
at jgibblda.LDADataset.readDataSet(LDADataset.java:154)
at jgibblda.Model.initNewModel(Model.java:476)
at jgibblda.Estimator.init(Estimator.java:45)
at jgibblda.LDA.main(LDA.java:49)
Fail to read training data!

不知道为什么错误日志消息中的目录前面有一个/。但是models/data/data.txt确实存在,我可以在根目录正确进入models/data。库相关代码如下:

public static LDADataset readDataSet(BufferedReader reader, Dictionary dict){
try {
//read number of document
String line;
line = reader.readLine();
int M = Integer.parseInt(line);
System.out.println("NewM:" + M);

LDADataset data = new LDADataset(M, dict);
for (int i = 0; i < M; ++i){
line = reader.readLine();

data.setDoc(line, i);
}

return data;
}
catch (Exception e){
System.out.println("Read Dataset Error: " + e.getMessage());
e.printStackTrace();
return null;
}
}

我也尝试过../../models/data/data.txt但也失败了。你知道如何解决这个问题吗?预先感谢您!

最佳答案

在方法Model.initNewModel(LDACmdOption option)中,数据集的文件名被构造为

dir + File.separator + dfile

如果dir为空,文件名将从根目录开始。为了避免这种行为,您可以使用选项-dir来指定数据目录。

运行它

java -mx512M -cp bin:lib/args4j-2.0.6.jar jgibblda.LDA -est -alpha 0.5 \
-beta 0.1 -ntopics 100 -niters 1000 -savestep 100 -twords 20 \
-dir /home/youruser/project/models/data/ \
-dfile data.txt

将从目录/home/youruser/project/models/data/读取文件data.txt。所有生成的文件也将存储在 /home/youruser/project/models/data/ 中。

关于java - 即使文件存在于 Java 中也没有这样的文件或目录错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37517690/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com