gpt4 book ai didi

java - 从文件中读取特定行并将数据与一行分开

转载 作者:行者123 更新时间:2023-11-30 07:52:33 25 4
gpt4 key购买 nike

我是 java 的新手,所以任何帮助将不胜感激。

我正在尝试编写一个程序,询问用户要读取哪个文件,然后询问 ID,在文件中搜索该 ID,然后从该行输出信息。它将读取的文本文件格式如下:

Apple^201^3

香蕉^202^4

橙色^205^5

2nd 列用于 ID。

我还需要将信息分开一些,这样我才能像这样输出它:

元素:苹果

ID:201:

价格:3 美元

import java.util.*;
import java.io.*;
public class fruit
{
public static void main(String[] args) throws IOException
{
Scanner keyboard = new Scanner(System.in);

System.out.println("Enter a filename >> ");
String filename = keyboard.nextLine();

File f = new File(filename);
Scanner fin = new Scanner(f);

System.out.println("Enter item ID: ");
int fruitID = keyboard.nextInt();

while(fin.hasNextLine())
{
String line = fin.nextLine();

if(fin.hasNextInt(fruitID))
{
System.out.println(line);
}
else
{
System.out.println("ERROR");
}
}
fin.close();
}
}

最佳答案

Hope this will help


import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;

public class FindGivenStringFromFile {

public static void main(String args[]) throws FileNotFoundException {

Scanner keyboard = new Scanner(System.in);

System.out.println("Enter a filename >> ");
String filename = keyboard.nextLine();

File f = new File(filename);
Scanner fin = new Scanner(f);

System.out.println("Enter item ID: ");
int fruitID = keyboard.nextInt();

//Reading each line of file using Scanner class
int lineNumber = 1;
while (fin.hasNextLine()) {
String line = fin.nextLine();
String[] lineDataArray = line.split("\\^");
if(lineDataArray != null && lineDataArray.length >2){
if(Integer.parseInt(lineDataArray[1]) == fruitID){
System.out.println("Item: " + lineDataArray[0]);
System.out.println("Id: " + lineDataArray[1]);
System.out.println("price: $" + lineDataArray[2]);
}

lineNumber++;
}

}
}
}

关于java - 从文件中读取特定行并将数据与一行分开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45749381/

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