“访客详细信息问题Java中的IO文件处理
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了“访客详细信息问题Java中的IO文件处理相关的知识,希望对你有一定的参考价值。
VIP公司集团推出了一个新的购物商场“ Le Le”。为了推广该购物中心,他们与著名的商业活动组织者“第六届活动”进行了组织抽奖活动。组织者必须收集促销期间所有访客的姓名,电话和电子邮件ID,并将其提供给公司。
组织者需要一个自动化的应用程序,并希望将记录存储在名为“ visitors.txt”的文本文件中。
记录应以以下结构存储
名称1,电话号码1,电子邮件ID1;名称2,电话号码2,电子邮件ID2;
在记录中,每个属性应使用逗号(,)分隔,而记录应使用半冒号(;)分隔。
创建一个具有两个名为Main.java和FileManager.java的类的Java应用程序
在FileManager类中实现以下方法[已给出方法框架]
静态公共文件createFile()–此方法应创建文件并返回它。
static public void writeFile(File f,String record)–在该方法中,第一个参数是要添加记录的文件引用,第二个参数是记录,该记录应附加在文件中。 [记录应按照给定的格式]
静态公共字符串[] readFile(File f)–此方法接受要读取的文件,返回文件中的所有记录。
[[注意:请勿修改给定方法的签名]
在Main类中,使用以下Input和Output语句,并从FileManager类中调用所需的方法来操作文件。
输入名称
约翰
输入电话号码
1234567
输入电子邮件
johnpeter@abc.com
您是否要输入其他记录(是/否)
是
输入名称
恩典
输入电话号码
98765412
输入电子邮件
gracepaul@xyz.com
您是否要输入其他记录(是/否)
否
是否要显示所有记录(是/否)
是
John,1234567,johnpeter @ abc.com
Grace,98765412,gracepaul @ xyz.com
FileManager class
import java.io.FileWriter;
import java.io.IOException;
import java.io.FileNotFoundException;
import java.util.Scanner;
import java.util.*;
import java.io.File;
@SuppressWarnings("unchecked")//Do not delete this line
public class FileManager
{
static public File createFile()
{
File file = new File("visitors.txt");
File parent = file.getParentFile();
if (parent != null)
parent.mkdirs();
return file;
}
//change the return type as per the requirement
static public void writeFile(File f, String record)
{
try{
FileWriter myWriter = new FileWriter(f.getName(),true);
myWriter.write(record+";");
myWriter.close();}
catch (IOException e) {
System.out.println("An error occurred.");
e.printStackTrace();
}
}
static public String[] readFile(File f)
{
List<String> tokens = new ArrayList<String>();
try{
File myObj = new File(f.getName());
Scanner myReader = new Scanner(myObj);
while (myReader.hasNextLine()) {
// String [] arr= myReader.nextLine().split(";");
// tokens = Arrays.asList(arr);
tokens.add(myReader.nextLine());
}
myReader.close();
}
catch (FileNotFoundException e) {
System.out.println("An error occurred.");
e.printStackTrace();
}
String[] tokenArray = tokens.toArray(new String[0]);
//=tokenArray.split(";");
return tokenArray;
}
}
Main class
import java.util.*;
import java.io.FileNotFoundException;
//import necessary packages
import java.io.File;
@SuppressWarnings("unchecked")//Do not delete this line
public class Main
{
public void abcd(){
Scanner in = new Scanner(System.in);
System.out.println("Enter Name");
String name=in.next();
System.out.println("Enter Phone Number");
long phone=in.nextLong();
System.out.println("Enter Email");
String id= in.next();
FileManager f= new FileManager();
File x =f.createFile();
f.writeFile(x,name+","+phone+","+id);
System.out.println("Do you want to enter another record(yes/no)");
String choice=in.next();
if(choice.equals("yes")){
abcd();
}
if(choice.equals("no"))
{String []q=f.readFile(x);
String pl[]=q[0].split(";");
for(int i=0;i<pl.length;i++)
{
System.out.println(pl[i]);
}
System.exit(0);
}
}
public static void main(String[] args)
{
Main asd=new Main();
asd.abcd();
}
}
此程序为我提供了所需的输出,但无法运行所有测试用例。
以上是关于“访客详细信息问题Java中的IO文件处理的主要内容,如果未能解决你的问题,请参考以下文章