我正在创建一个我们进行货币兑换的项目。其中一个步骤是我必须让用户输入他们想要从美元转换成什么类型的货币。我必须做一个while循环来检查并确保输入对文本文件是正确的。
文本文件只有这个
CD 1.05 0.93
MP 0.11 0.095
欧盟1.554 1.429
所以这个人会输入CD MP或EU而不确定如何检查它。使用eclipse和txt文件位于项目文件夹中。
public class Communication {
public String askForCode(){
String currencyCode = JOptionPane.showInputDialog(null, "We exchange the following Currencies: \n "
+ "CD (Canadian Dollar)\n"
+ "MP (Mexican Peso) \n"
+ "EU (Euro) \n"
+ "Enter the Currency Code");
File myFile = new File("dailyrates.txt");
while (!currencyCode.equals){
}
return currencyCode;
}
我会使用file.next行来验证吗?
答案 0 :(得分:1)
您可以使用showOptionDialog
...
Object[] options = {"CD",
"MP",
"EU"};
int n = JOptionPane.showOptionDialog(null,
"Enter the FROM Currency Code",
"From Currency",
JOptionPane.YES_NO_CANCEL_OPTION,
JOptionPane.QUESTION_MESSAGE,
null,
options,
options[2]);
甚至更具限制性showInputDialog
...
Object[] possibilities = {"CD", "MP", "EU"};
String s = (String) JOptionPane.showInputDialog(
null,
"Enter the FROM Currency Code",
"From Currency",
JOptionPane.PLAIN_MESSAGE,
(Icon)null,
possibilities,
"CD");
这会将用户可用选项限制为您希望他们使用的选项
有关详细信息,请参阅How to Make Dialogs
您可以阅读文本文件,将值存储在数组List
或Map
中,并直接在对话框中使用这些代码,以增加灵活性......
答案 1 :(得分:0)
Files.readAllLines(Path, Charset)
将读取文件中的行到ArrayList,您可以将其更改为toArray()
的字符串数组。您可以使用toPath()
将文件更改为路径。然后,您可以将每行的开头与输入的字符串进行比较,直到找到正确的行。