GVKun编程网logo

如何在Swing中使用拖放来获取文件路径?(swing拖动)

16

最近很多小伙伴都在问如何在Swing中使用拖放来获取文件路径?和swing拖动这两个问题,那么本篇文章就来给大家详细解答一下,同时本文还将给你拓展c–如何从QDir和相对文件路径创建绝对文件路径?、c

最近很多小伙伴都在问如何在Swing中使用拖放来获取文件路径?swing拖动这两个问题,那么本篇文章就来给大家详细解答一下,同时本文还将给你拓展c – 如何从QDir和相对文件路径创建绝对文件路径?、c# – 如何通过单个WinForm对话框获取文件夹或文件路径?、ios – 如何从UIImage获取文件路径?、javascript - php 有什么函数是可以根据文件名称,来获取这个文件的全路径的吗?或者js 怎么获取文件的全路径?等相关知识,下面开始了哦!

本文目录一览:

如何在Swing中使用拖放来获取文件路径?(swing拖动)

如何在Swing中使用拖放来获取文件路径?(swing拖动)

我的swing应用程序中有一个JTextField,它保存选定要使用的文件的文件路径。目前,我有一个JFileChooser,用于填充此值。但是,我想为用户添加将文件拖放到此JTextField上的功能,而不是始终使用JFileChooser来将其放置在JTextField中。

如何才能做到这一点?

答案1

小编典典

首先,您应该研究Swing
DragDrop支持。在那之后,针对不同操作系统的一些小技巧。一旦一切顺利,您将处理drop()回调。在此回调中,您将要检查Transferable的DataFlavor。

对于Windows,您只需检查DataFlavor.isFlavorJavaFileListType(),然后按以下方式获取数据

List<File> dropppedFiles = (List<File>)transferable.getTransferData(DataFlavor.javaFileListFlavor)

对于Linux(可能是Solaris),DataFlavor有点棘手。您需要制作自己的DataFlavor,而Transferable类型将有所不同

nixFileDataFlavor = new DataFlavor("text/uri-list;class=java.lang.String");String data = (String)transferable.getTransferData(nixFileDataFlavor);for(StringTokenizer st = new StringTokenizer(data, "\r\n"); st.hasMoreTokens();){    String token = st.nextToken().trim();    if(token.startsWith("#") || token.isEmpty())    {         // comment line, by RFC 2483         continue;    }    try    {         File file = new File(new URI(token))         // store this somewhere    }    catch(...)    {       // do something good       ....    }}

c – 如何从QDir和相对文件路径创建绝对文件路径?

c – 如何从QDir和相对文件路径创建绝对文件路径?

在我的程序中,我有一个QDir表示使用QCoreApplication :: applicationDirPath()的可执行文件的位置和一个QString,它表示相对于可执行目录的文件路径(使用..等).如何将此信息转换为同一文件的绝对文件路径?

解决方法

您可以使用 QFileInfo,使用带有QDir和QString的构造函数,然后根据您想要的内容调用absoluteFilePath或canonicalFilePath.

QDir dir;
// ...
QString file;
// ...
QFileInfo fi(dir,file);
QString canonical = fi.canonicalFilePath();

c# – 如何通过单个WinForm对话框获取文件夹或文件路径?

c# – 如何通过单个WinForm对话框获取文件夹或文件路径?

更新:似乎我不清楚我的问题是什么.约翰·阿伦对我的头衔的编辑似乎也引起了更多的误解.标题更改为“我如何获取文件夹或文件路径?”这不是我追求的.我知道有一个对话框可以处理文件,另一个对象可以处理文件夹.我知道这些对话框中的每一个都可以返回文件夹或文件的路径.我说我不确切知道如何获取文件路径,但即使我知道如何这样做也没有帮助我.

正如我原来的问题所述:

“I’m having the user select a folder or file through some dialog. I don’t kNow whether the path will belong to a folder or a file. Once the user hits the ‘Open’ button,I want the currently selected directory or file path to be stored in a string.”

我在这里的意思是我想使用一些可能存在或不存在的对话框.我不知道用户是在文件或文件夹之后.用户知道这一点,但用户不知道路径.这就是使用对话框的原因.用户将搜索所需的文件或文件夹,然后单击“打开”.根据我的需要使用单个对话框更有意义.我想看看是否存在这样的对话框,因为我对.NET Framework的体验有限.

Jared Kells的回答几乎就是我想要的.在阅读了他提供的内容后,似乎不存在这样的对话框.我将不得不提供自己的实现.

由于提出我自己的实现可能会耗费时间和困难,我现在将不会这样做.如果某人提供了非常有帮助的答案,我会等几天选择答案.

感谢那些贡献的人,即使它不是我所追求的.

原始内容:

我正在寻找一种方法来获取文件夹或文件的文件路径.我玩过OpenFileDialog和FolderbrowserDialog但没有取得多大成功.我能够使用FolderbrowserDialog.Selectedpath获取文件夹路径.使用OpenFileDialog类,我无法弄清楚如何获取文件路径.

即使我能弄明白,我仍然处于困境中.我让用户通过某个对话框选择文件夹或文件.我不知道路径是属于文件夹还是文件.一旦用户点击“打开”按钮,我希望当前选择的目录或文件路径存储在字符串中.看起来我使用的每个类都被文件或文件夹困住了.

这是否可以使用WinForms对话框?我不想在此时编写自己的对话框.

解决方法

openFileDialog1.ShowDialog();
string filePath = openFileDialog1.FileName;

将为您提供文件的路径.

folderbrowserDialog1.ShowDialog();
string folderPath = folderbrowserDialog1.Selectedpath;

对于文件夹.

string path = ...
if(File.Exists(path))...//is file
if(Directory.Exists(path))...//is folder

检查它是什么.

ios – 如何从UIImage获取文件路径?

ios – 如何从UIImage获取文件路径?

通常情况下,您可以使用路径来显示图像.我想知道如果您已经拥有图像,是否可以获得路径.

解决方法

如果您已经拥有该图像,即将文件添加到您的资源中,则可以使用该文件获取文件路径;
Nsstring *string = [[NSBundle mainBundle] pathForResource:@"IMAGE_FILE_NAME" ofType:@"jpg"]; // or ofType:@"png",etc.

javascript - php 有什么函数是可以根据文件名称,来获取这个文件的全路径的吗?或者js 怎么获取文件的全路径?

javascript - php 有什么函数是可以根据文件名称,来获取这个文件的全路径的吗?或者js 怎么获取文件的全路径?

例如:

根据:demo.txt
获取他的全路径:C:/Users/ilovemosh/Desktop/demo.txt 
登录后复制
登录后复制

回复内容:

例如:

根据:demo.txt
获取他的全路径:C:/Users/ilovemosh/Desktop/demo.txt 
登录后复制
登录后复制

你的文件,必须在include_path里面. 不可能你随便给一个文件名,就能给你绝对路径的。。没这么神

传送门

dirname(__FILE__)
获取文件的绝对路径

立即学习“PHP免费学习笔记(深入)”;

当前执行 PHP 文件所在文件夹 __DIR__, 再根据 demo.txt 与当前执行 PHP 文件的相对性在确定文件路径即可

一般获取文件信息你肯定是要先使用某种方式(比如上传)然后才能获取到它的文件信息


js的plupload的插件是你通过上传此文件(但不一定真的要成功上传到哪里,只是拿到这个文件对象去计算)然后获取到此文件的信息,php的yii框架里的上传也都能拿到文件的全路径信息

今天关于如何在Swing中使用拖放来获取文件路径?swing拖动的介绍到此结束,谢谢您的阅读,有关c – 如何从QDir和相对文件路径创建绝对文件路径?、c# – 如何通过单个WinForm对话框获取文件夹或文件路径?、ios – 如何从UIImage获取文件路径?、javascript - php 有什么函数是可以根据文件名称,来获取这个文件的全路径的吗?或者js 怎么获取文件的全路径?等更多相关知识的信息可以在本站进行查询。

本文标签: