이 문제는 조금 있습니다. 사용자가 데이터를 입력하고 데이터를 object.obj 파일에 저장해야하는 배열을 만들려고했습니다.배열에서 serializable 객체를 작성하십시오.
이 내 코드입니다 :
import java.util.*;
public class insertData implements java.io.Serializable
{
Scanner keyboard=new Scanner(System.in);
private String One;
private String Two;
public void new()
{
System.out.println("How many lines do you want to insert?");
int p=keyboard.nextInt();
for (int i = 0; i < p; i++)
{
One=keyboard.next();
Two=keyboard.next();
}
}
public String toString()
{
new();
String text=One+"\t"+Two;
return text;
}
}
그리고 File 클래스는 다음과 같습니다
import java.io.*;
public class fileA
{
insertData iD = new insertData()
String a;
ObjectOutputStream oos;
ObjectInputStream ois;
public void writeFile(File file)
{
try
{
oos=new ObjectOutputStream(new FileOutputStream(file1));
a=iD.toString();
oos.writeObject(a);
oos.close();
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
}
public void readFile(File file1)
{
try
{
ois=new ObjectInputStream(new FileInputStream(file1));
String str=(String)ois.readObject();
System.out.println(str);
ois.close();
}
catch (IOException ex)
{
System.err.println(ex);
}
catch (ClassNotFoundException ex)
{
System.err.println(ex);
}
}
}
문제는이 입력 한 데이터의 마지막 라인을 절약 할 수 있다는 것입니다. 결과는 다음과 같아야합니다
Text1 Text2
aaaaa bbbbb
ccccc ddddd
'새()'올바른 방법이 아닙니다. –
메인 클래스는 어디에 있습니까? –
@ Eng.Fouad가 옳습니다. 메소드 이름으로 java 예약 키워드를 사용할 수 없습니다. 첫 번째 장소에서 프로그램을 어떻게 실행할 수 있는지에 대한 의문이 제기됩니다. 컴파일러 오류가 있어야합니다. –