是否可以在.txt文件上寫入JList的內容? 如果可能的話,你能給我一個樣品嗎? 謝謝創建一個從JList填充它的.txt文件
回答
一個JList,是不是數據結構,但顯示組件。
你應該有一個ListModel的內容,如果這個模型的要素是簡單的字符串(或東西易於轉換爲字符串,你當然可以把它寫在文本文件中。
public static void exportList(ListModel model, File f) throws IOException {
PrintWriter pw = new PrintWriter(new OutputStreamWriter(new FileOutputStream(f), "UTF-8"));
try {
int len = model.getSize();
for (int i = 0; i < len; i++) {
pw.println(model.getElementAt(i).toString());
}
} finally {
pw.close();
}
}
所以它就像使用DefaultListModel然後輸入一個命令,如 JList.setModel(model),對吧? – Franky 2011-03-08 22:41:57
以這種方式,或者如果你的List已經有了一些帶有數據的模型,你可以使用'list.getModel()'來代替 - 我的方法應該和任何ListModel一起工作。 (雖然我沒有測試它。) – 2011-03-08 22:45:30
列表有模型,模型有數據。您只需將該數據寫入文件:
import javax.swing.*;
import java.awt.BorderLayout;
import java.awt.event.*;
import java.io.PrintStream;
import java.io.FileOutputStream;
import java.io.FileNotFoundException;
class ListDemo {
public static void main(String ... args) throws FileNotFoundException {
// The data
final Object [] data = {"A","B","C"};
// Put it in the frame
JFrame frame = new JFrame();
frame.add(new JScrollPane(new JList(data)));
// write to a file
final PrintStream out = new PrintStream(new FileOutputStream("datos.txt"));
frame.add(new JButton("Print"){{
addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
for(Object d : data) {
out.println(d);
}
}
});
}}, BorderLayout.SOUTH);
frame.pack();
frame.setVisible(true);
}
}
這只是一個示例。您必須創建我們自己的列表模型並使用您自己的數據填充它。
此外,我沒有在這裏關閉文件。
爲了更多地瞭解JList中讀到這裏:
http://download.oracle.com/javase/tutorial/uiswing/components/list.html
要了解更多關於流在這裏:
http://download.oracle.com/javase/tutorial/essential/io/charstreams.html
是這是一個家庭作業的問題?
反正是有可能從JList中,你可以使用下面的方法,雖然我相信它不是做的最好的方式,它應該工作
其中列表是一個JList
list.setSelectedIndex(int index); //設置一個選擇
list.getSelectedValue(); //返回Object
或
list.setSelectedIndices(INT []索引); //設置多個選擇
list.getSelectedValues(); //返回所有選擇值在一個Object []
寫入/讀取/刪除/創建讀this
- 1. 不能填充從一個TXT文件一個JList
- 2. 從.txt文件填充jList和文本字段
- 3. 用文件夾填充jList?
- 4. 如何用txt文件中的某些單詞填充JList
- 5. 從另一個表中創建一個表而不填充它
- 6. 從數組填充JList []
- 7. 填充從文本文件的JList通過按鈕讀取
- 8. 創建一個大小爲一頁的文件,並用\ 0字節填充它
- 9. 如何使用另一個JList中的數據填充JList
- 10. 通過Ant構建文件創建數據庫(不填充它)
- 11. 從一個txt文件創建一個數組
- 12. 創建一個txt文件失敗,PHP
- 13. 使用JButton填充JList並在Jlist上使用DoubleClick填充JTextField
- 14. 逐行分割txt文件,並從每行創建一個txt文件
- 15. 創建文本文件並使用bash填充它
- 16. 從pdf文件創建.txt文件
- 17. 從文本文件創建並填充ROOT文件
- 18. 創建一個包含填充的ContainerControl
- 19. java如何填充多個JTextFields從.txt文件讀取數據
- 20. 創建一個空的Pandas DataFrame,然後填充它?
- 21. 從非txt fopen文件創建一個文本框
- 22. 如何填充SQLITE3模型一個TXT數據文件
- 23. 使用ArrayList從actionlistener中填充JList
- 24. 從數據庫SQL填充JList
- 25. 如何創建一個文件來填充HttpContext.Current.Request.Files?
- 26. 使用txt文件填充jTable
- 27. Bash腳本文件創建和填充
- 28. Fixpack 45 for websphere 6.1後log4j創建文件但不填充它
- 29. 用數據填充JList
- 30. JList左附和填充
對不起,你想一個JList的內容保存到一個txt文件,或者使用文件作爲JList的數據源? – javanna 2011-03-08 22:26:49
第一個! – Franky 2011-03-08 22:29:16