我已经为Dropbox创建了一个Maven NetBeans项目,我需要从Dropbox调用文件夹中的文件,并在界面上的JList中显示它们。
我可以使用(System.out.println())
在输出中打印出以下内容:
public void GetFiles()
{
try
{
MainEmpOperations MEMPops = new MainEmpOperations();
// Get files and folder metadata from Dropbox root directory
ListFolderResult result = client.files().listFolder("/Employees");
while (true) {
for (Metadata metadata : result.getEntries()) {
System.out.println(metadata.getPathLower());
}
if (!result.getHasMore()) {
break;
}
result = client.files().listFolderContinue(result.getCursor());
}
}
catch (Exception e)
{
JOptionPane.showMessageDialog(null, e);
}
}
我尝试用于将文件加载到JList
中的编码与上面使用DefaultListModel
的编码类似。
这是我迄今为止所做的编码,但它没有列出JList中的文件。
public void GetFiles()
{
try
{
MainEmpOperations MEMPops = new MainEmpOperations();
// Get files and folder metadata from Dropbox root directory
ListFolderResult result = client.files().listFolder("/Employees");
DefaultListModel modelListFiles = new DefaultListModel();
while (true) {
for (Metadata metadata : result.getEntries()) {
modelListFiles.addElement(metadata.getPathLower());
}
if (!result.getHasMore()) {
break;
}
result = client.files().listFolderContinue(result.getCursor());
MEMPops.List_CloudFiles.setModel(modelListFiles);
}
}
catch (Exception e)
{
JOptionPane.showMessageDialog(null, e);
}
}
请有人帮我一下,帮我把文件名加载到JList
中。
非常感谢
我设法弄明白了。
它需要的工作方式是,元素的添加和模型的设置需要一个接一个地完成。将set模型放在if语句之后会导致该模型被清除或变为空。
因此,以下编码将适用于JList
中的文件列表。请注意:dropbox连接和管理所需的其他编码在dropbox开发者网站上。
有效的编码:
public void GetFiles()
{
try
{
// Get files and folder metadata from Dropbox root directory
//please note the employees is a folder that is on dropbox
ListFolderResult result = client.files().listFolder("/Employees");
DefaultListModel modelListFiles = new DefaultListModel();
while (true) {
for (Metadata metadata : result.getEntries()) {
//get name just returns the name of the file and getPathLower() is used for getting the directory and the filename together.
modelListFiles.addElement(metadata.getName());
List_CloudFiles.setModel(modelListFiles);
}
if (!result.getHasMore()) {
break;
}
result = client.files().listFolderContinue(result.getCursor());
}
}
catch (Exception e)
{
JOptionPane.showMessageDialog(null, e);
}
}
比如(投赞成票或标记为有帮助),如果我在自己的问题上发布的这个答案也能帮助你。