【问题标题】:JList selection to String and be able to save in a text fileJList 选择字符串并能够保存在文本文件中
【发布时间】:2013-04-29 15:47:09
【问题描述】:

我正在为我的班级创建一个比萨订购表的程序。我有代码集,因此无论选择什么选择,它都会被放入一个名为 Getmetheorder 的 TextField 中。我想将所有选择的选项放入一个文本文件中,作为订单的收据。

这就是我设置列表的方式,并且没有任何问题。

Object selected[] = toplist.getSelectedValues();
        String tops = "";
        // Use a for loop to obtain the names of the selected items
        for (int k = 0;k < selected.length ; k++ )
        {
            tops += selected[k] + ",";
        }
        Getmetheorder.setText( sizepicked + tops );

String[] selectedItems = new String[selected.length];

for(int i=0; i<selected.length;i++){
selectedItems[i] = selected[i].toString();

我想这样当用户选择意大利辣香肠,例如辣椒和蘑菇时,将其插入到此文本文件中。

   try {
BufferedWriter out = new BufferedWriter(new FileWriter("YourPizzaOrder.txt"));
out.write("Thank you for using the Online Pizza Ordering Program.");
out.newLine();
out.write("Your order was created on"+" "+today);
out.newLine();
out.write("*------------------------------------------------------*");
out.newLine();

out.write("a " + sizepicked + " With "+ //This is where i want the items from the Jlist to appear );
out.close();
}
catch (IOException e)
{
  System.out.println("Exception ");
}

sizepicked 变量来自小、中和大的按钮组选择。这是按计划工作并输出到文本文件。我对如何显示列表选择有点困惑。

【问题讨论】:

  • 您希望每个项目单独一行还是全部单独一行?
  • All on 1 line 会很棒。
  • 1) 为了尽快获得更好的帮助,请发帖 SSCCE。 2) 对代码块使用一致且符合逻辑的缩进。代码的缩进是为了帮助人们理解程序流程。

标签: java swing awt jlist


【解决方案1】:

你可以这样做......

StringBuilder sb = new StringBuilder(64);
for (String value : selectedItems) {
    if (sb.length() > 0) {
        sb.append(", ");
    }
    sb.append(value);
}

out.write("a " + sizepicked + " With "+ sb.toString());

【讨论】:

    【解决方案2】:

    这是用于将选定的项目保存到文本文件:

      List<Object> myList= list.getSelectedValuesList();
        try {
            BufferedWriter buffer = new BufferedWriter(new FileWriter(new File("file.txt"),true));
            for(int i = 0 ; i<myList.size();i++){
                buffer.write(myList.get(i).toString());
                buffer.flush();
            }
            buffer.close();
    
        } catch (IOException ex) {
            //....
        }
    

    为了显示您可以使用JTableJList 的所有选定值,我更喜欢JList 它易于使用:

    JList list2 = new JList(myList.toArray());
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-06
      • 2018-09-19
      • 2018-05-16
      • 2019-12-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多