我读了一个由JFileChooser选择的文件,这意味着该文件存在并且我知道它在那里,但是我仍然收到FileNotFoundException。
我对该文件的路径进行了硬编码,并且工作正常。
JFileChooser chooser = new JFileChooser();
int rueckgabeWert = chooser.showOpenDialog(null);
if (rueckgabeWert == JFileChooser.APPROVE_OPTION)
{
filetoopen = chooser.getSelectedFile().getName();
Path path = Paths.get(filetoopen);
List<String> allLines = null;
try
{
allLines = Files.readAllLines(path, StandardCharsets.UTF_8);
}
catch (IOException e1)
{
e1.printStackTrace();
}
for (int i = 0; i < allLines.size(); i++)
{
System.out.println(allLines.get(i));
}
}
如何获取文件以正确打开文件?
答案 0 :(得分:2)
chooser.getSelectedFile().getName()
返回文件的名称。您需要获取文件的完整路径才能打开它。
改为使用chooser.getSelectedFile().getAbsolutePath()
。
答案 1 :(得分:2)
如上所述,getName()
返回文件名,而不是路径。
如果要通过Path
打开文件,可以使用toPath()
的{{1}}功能:
File
答案 2 :(得分:1)
¿ALTER TRIGGER trigger_example
ON dbo.information
INSTEAD OF INSERT
AS
DECLARE @surname varchar(30)
select @surname = Person_Job FROM inserted
IF(@surname = 'Enderson')
BEGIN
PRINT 'The person with this record already exists in the list.'
END
ELSE
BEGIN
INSERT INTO personel.dbo.information(Person_id,Person_FirstName,Person_LastName,Person_Salary,Person_Job)
SELECT Person_id,Person_FirstName,Person_LastName,Person_Salary,Person_Job FROM inserted
END
GO
是什么,它是文件吗?在filetoopen
行中,您仅告诉chooser.getSelectedFile().getName()
仅获取文件名,应尝试使用JFileChooser
而不是getAbsolutePath()
。并且也将getName()
更改为chooser.showOpenDialog(null);
。希望对您有帮助。