我一直在互联网上寻找帮助,但我找不到,所以我求助于发帖。
我有一个txt文件,格式如下
1/2 0 1/6 6/11 1/6 2/10
我需要读取这些单独的分数,并输入分子和分母的函数称为BigFraction(num,denom)。
我调用读取器并将其作为字符串输出。然后,我在空格上进行拆分,以获得作为字符串的各个分数,并将它们输入到我的助手方法strToBF中,该方法在正斜杠上进行拆分,并输入分子和分母。
但它不起作用,任何帮助都将不胜感激
我的主要方法
String file = fileToString(fileName);
file.replaceAll("(.*)\\/(.*)", "a");
String[] splitFile = file.split(" ");
BigFraction conditionA = stringToBF(splitFile[0]);
BigFraction c1A = stringToBF(splitFile[1]);
BigFraction c2A = stringToBF(splitFile[2]);
ConditionalTwoCoinChannel CTCCA = new ConditionalTwoCoinChannel(conditionA, new TwoCoinChannel(c1A, c2A));
BigFraction conditionB = stringToBF(splitFile[3]);
BigFraction c1B = stringToBF(splitFile[4]);
BigFraction c2B = stringToBF(splitFile[5]);
ConditionalTwoCoinChannel CTCCB = new ConditionalTwoCoinChannel(conditionB, new TwoCoinChannel(c1B, c2B));
List<ConditionalTwoCoinChannel> outputList = new ArrayList<ConditionalTwoCoinChannel>();
outputList.add(CTCCA);
outputList.add(CTCCB);
return outputList;
还有我的两个助手方法
private static String fileToString(String file)
throws FileNotFoundException, IOException {
BufferedReader fileReader = new BufferedReader(new FileReader(file));
StringBuilder sBuilder = new StringBuilder();
String fileLine = fileReader.readLine();
try {
while (fileLine != null) {
sBuilder.append(fileLine);
sBuilder.append(" ");
fileLine = fileReader.readLine();
}
} catch (FileNotFoundException e1) {
throw new RuntimeException("file not found");
} catch (IOException e2) {
throw new RuntimeException("Input Error");
}
finally {
fileReader.close();
}
return sBuilder.toString();
private static BigFraction stringToBF(String str){
if (strToInt(str) == 0) {
return BigFraction.ZERO;
}
else {
String[] strSplit = str.split("(.*)a(.*)");
int numerator = strToInt(strSplit[0]);
int denominator = strToInt(strSplit[1]);
return new BigFraction(numerator, denominator);
}
}
这个啊
String[] strSplit = str.split("(.*)a(.*)");
无法拆分“1/2”
尝试
String[] strSplit = str.split("/");
问题内容: 我会尽量保持清楚,但如果我的问题不完美,请原谅我。我有一个包含多行数据的txt文件。例: 123拉尔夫·玻色20000 200 1 2 256 ed shane 30000 100 2 4 … 我需要按顺序读取每一行,并将其传递回单独类中的方法进行处理。我知道如何通过使用StringTokenizer将每一行分解为元素。 但是,我不确定如何一次读取一行,将元素传递回另一类,然后在完成处
我正试图编写一个程序,读取网络中相互交互的节点列表。它以以下格式写入文本文件: 这表示节点1与节点2和节点3交互,节点2仅与节点3交互,等等。 该程序将能够读取该文件,并将删除任何重复的交互,并且如果我输入节点的名称,将能够向我返回节点与其他节点的交互次数。然而,我对Java非常陌生,我首先尝试让它读入文件,尽管我的代码目前没有读入文件。以下是我迄今为止的代码: 任何关于如何解决此问题的帮助都将不
我有一个txt文件,格式如下: 我想把所有键和它们的值放在我创建的hashMap中。如何让或知道何时拆分冒号(:)处的键和值?:-) 我试过:
我的项目中有这样一段代码: 没有错误,应用程序运行正常,但是变量中从来没有任何文本,我确信txt文件中有文本! 我已经尝试过不同的方法来读取文本文件(使用BufferedReader、Scanner、FileInputStream和FileReader),但都不起作用。 另外,我几乎可以肯定问题不在变量中,因为我尝试通过代码(使用运行时)打开文件,它正常打开了正确的文件。 好的,我尝试添加,但是仍
所以,我试图让我的程序从文本文件中读入一个结构数组,它编译得很好,但看起来并没有真正读入值?...我不知道为什么。这是代码的相关部分: 这是txt文件(标题:Planets.txt) 水星120 50 500 12.1 30 2金星120 50 500 29.1 30 6地球120 50 500 32.2 30 7月亮120 15 50 5.3 30 2火星120 50 500 12.2 30 4
问题内容: 比方说,我有一个文件夹,名为和里面我有,和。如何使用Java和读取文件夹中的所有文件(如果可能的话)? 问题答案: 类似于以下内容应该可以帮助您,请注意,为了简单起见,我使用apache commons FileUtils而不是弄乱缓冲区和流…