lyn*_*oid 3 java swt filedialog
我正在使用SWT的FileDialog让用户选择几个文件:
FileDialog dlg = new FileDialog(s, SWT.MULTI);
dlg.setFilterPath(somePath);
String fn = dlg.open();
if (fn != null)
String [] files = dlg.getFileNames()
Run Code Online (Sandbox Code Playgroud)
而fn
返回到目录的绝对路径,该files
数组中包含的相对路径.我想获得每个文件的绝对路径.有没有办法在Java中实现跨平台(Win,Linux,MacOS)?
您需要将文件名附加到给定的过滤器路径.为了避免担心路径分隔符等,您可以使用File
该类.例如:
String[] filenames = dialog.getFileNames();
String filterPath = dialog.getFilterPath();
File[] selectedFiles = new File[filenames.length];
for(int i = 0; i < filenames.length; i++)
{
if(filterPath != null && filterPath.trim().length() > 0)
{
selectedFiles[i] = new File(filterPath, filenames[i]);
}
else
{
selectedFiles[i] = new File(filenames[i]);
}
}
Run Code Online (Sandbox Code Playgroud)
如果您需要路径作为a String
,您当然可以getAbsolutePath()
在结果File
s 上使用该方法.
归档时间: |
|
查看次数: |
7745 次 |
最近记录: |