我想知道如何在 Java 应用程序中打开并显示 .txt。 .txt 与应用程序关联,当您单击它时,应用程序将打开,但如果不通过固定路径,则不会显示该文件。
我必须显示它,但前提是 .txt 文件与 jar 文件位于同一目录中,并且仅当直接运行应用程序时。从 .txt 直接访问会打开应用程序,但仅此而已。
我有这段代码,你直接看路径步骤吧。我要你从已点击的 .txt 中获取。
FileReader f = new FileReader("archivo.txt");
BufferedReader b = new BufferedReader(f);
String linea_cliente = b.readLine();
StringTokenizer datos_cliente = new StringTokenizer(linea_cliente,";");
while(datos_cliente.hasMoreTokens()){
pedido.setText(datos_cliente.nextToken());
id_cliente.setText(datos_cliente.nextToken());
nom_cli.setText(datos_cliente.nextToken());
dir_cli.setText(datos_cliente.nextToken());
cp_cli.setText(datos_cliente.nextToken());
loc_cli.setText(datos_cliente.nextToken());
prov_cli.setText(datos_cliente.nextToken());
pais_cli.setText(datos_cliente.nextToken());
obs_cli.setText(datos_cliente.nextToken());
}
抱歉我的英语不好。谢谢;)
最佳答案
FileReader f = new FileReader("archivo.txt");
暗示archivo.txt是相对路径。与当前可执行文件相关的相对含义。这是一个隐含的 .\archivo.txt
您可以将其放在子目录中并再次使用相对路径,例如 .\myfiles\textfiles\archivo.txt
其中 .\
是 jar 的位置。
如果您想输入许多不同的文本文件并且您不知道它们在哪里,那么您可以使用参数。从命令行来看,它看起来像:
> java jar myproj.jar C:\test\foo\archivo.txt
要在 main()
中访问它,请使用:
String filePath = args[0]
FileReader f = new FileReader(filePath);
如果您希望它可以跨多个系统移植,您需要利用 environment variables获取您的基本路径,然后将 .txt 文件的路由附加到基本路径。
抱歉,有点不清楚您的要求,所以我介绍了一些常见情况,如果您需要澄清,请告诉我。
关于java - 使用java应用程序可执行文件打开并读取随机.txt,不知道.txt的路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31295454/