【发布时间】:2018-09-16 07:36:07
【问题描述】:
我有一个带有 GUI 的程序,我在其中插入几个十六进制(字符串),按下搜索按钮,然后找到它的代码。我从 CSV 文件中导入我有代码的所有十六进制。我想要的是,如果我输入例如:11 D7 E2 FA,我的程序将只搜索第二个半字节,x 意味着被忽略:x1 x7 x2 xA,如果它在 CSV 中找到类似的东西,它会给我它的代码。这是我到目前为止所拥有的,这只在字符串匹配时找到我的情况。
codeOutputField.setText("");
String input = hexEntryField.getText();
try {
br = new BufferedReader(new FileReader(FIS));
while ((line = br.readLine()) != null) {
code = line.split(csvSplitBy);
if (input.equals(code[0])) {
codeOutputField.setText(code[1]);
}
}
}
CSV 示例:
01 5F 1E CE,0055
01 5F 13 D0,0062
01 5E 36 FE,0101
00 5E 36 FF,1002
这是现在对我有用的代码,想分享它。我现在唯一的问题是我只能从bat 文件运行jar 文件,双击不起作用。我不知道为什么。
String input = hexEntryField.getText();
String[] myStringArray = input.split("");
codeOutputField.setText("");
try {
br = new BufferedReader(new FileReader(FIS));
while ((line = br.readLine()) != null) {
code = line.split(csvSplitBy);
List<String> items = Arrays.asList(code[0].split(""));
System.out.println(items);
if (myStringArray[1].equals(items.get(1))
&& myStringArray[4].equals(items.get(4))
&& myStringArray[7].equals(items.get(7))
&& myStringArray[10].equals(items.get(10))) {
codeOutputField.setText(code[1]);
}
}
}
【问题讨论】:
标签: java string compare string-comparison partial