我试图从文本文件中读取内容。 ReadTextFile.java和ReadTextFileTest.java在同一个包ReadTextFile中。我在一个项目中使用了2个包,ReadTextFiles和CreateTextfiles。 ReadTextFiles包从文本文件中读取内容,CreateTextFile包将内容输入到文本文件中。
当我到达命令提示符时,我尝试通过javac ReadTextFileTest.java将java文件编译为类文件。我每次都会收到以下错误。
我猜它在识别我创建的ReadTextFile.java类的对象时遇到了麻烦。
这是我使用的两个类: ReadTextFile.java
package ReadTextFile;
import java.io.File;
import java.io.FileNotFoundException;
import java.lang.IllegalStateException;
import java.util.NoSuchElementException;
import java.util.Scanner;
import AccountRecord.AccountRecord;
public class ReadTextFile
{
private Scanner input;
public void openFile()
{
try
{
input = new Scanner( new File( "clients.txt" ) );
}
catch ( FileNotFoundException fileNotFoundException )
{
System.err.println( "Error opening file." );
System.exit(1);
}
}
public void readRecords()
{
AccountRecord record = new AccountRecord();
System.out.printf( "%-10s%-12s%-12s%10s\n", "Account",
"First Name", "Last Name", "Balance" );
try
{
while ( input.hasNext() )
{
record.setAccount( input.nextInt() );
record.setFirstName( input.next() );
record.setLastName( input.next() );
record.setBalance( input.nextDouble() );
System.out.printf( "%-10d%-12s%-12s%10.2f\n",
record.getAccount(), record.getFirstName(),
record.getLastName(), record.getBalance() );
}
}
catch ( NoSuchElementException elementException )
{
System.err.println( "File improperly formed." );
input.close();
System.exit( 1 );
}
catch ( IlegalStateException stateException )
{
System.err.println( "Error opening file." );
System.exit( 1 );
}
}
public void closeFile()
{
if ( input !=null )
input.close();
}
}
ReadTextFileTest.java
package ReadTextFile;
public class ReadTextFileTest
{
public static void main(String[] args)
{
ReadTextFile application = new ReadTextFile();
application.openFile();
application.readRecords();
application.closeFile();
}
}
答案 0 :(得分:0)
删除
package ReadTextFile;
ReadTextFile
不是一个包而是一个类。删除此行并尝试再次编译。
你一定意味着
import readTextFile;
但如果您确定它位于同一目录中,则不必导入它。所以,只需删除ReadTextFileTest
的第一行。
通常,避免使用与类相同的名称来命名包(尽管@Masud在评论中说的是可能的)。您应该遵循these命名约定。
答案 1 :(得分:0)
Add import statement as below:-
package ReadTextFile;
import ReadTextFile;
public class ReadTextFileTest
{
public static void main(String[] args)
{
ReadTextFile application = new ReadTextFile();
application.openFile();
application.readRecords();
application.closeFile();
}
}