如何使用变量为Java中的InputStream/.getResourceAsStream(variableForTextFiles)定义文件?
现在我有一个文本文件,可以读取硬编码的klebsielamicro.txt。我需要的是一个变量,如何使用变量为Java中的InputStream/.getResourceAsStream(variableForTextFiles)定义文件?,java,getresource,Java,Getresource,现在我有一个文本文件,可以读取硬编码的klebsielamicro.txt。我需要的是一个变量,fileName,根据不同java文件中的模板选择动态地引入不同的txtfile名称 在文件Micro.java下: static void getFullMicroArray() throws IOException { InputStream in = Data.class.getResourceAsStream("KlebsiellaMicro.txt"); BufferedRe
fileName
,根据不同java文件中的模板选择动态地引入不同的txtfile名称
在文件Micro.java
下:
static void getFullMicroArray() throws IOException
{
InputStream in = Data.class.getResourceAsStream("KlebsiellaMicro.txt");
BufferedReader reader = new BufferedReader(new InputStreamReader(in));
...
JButton btnLoadMicroTemplate = new JButton("Load Template");
btnLoadMicroTemplate.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String fileName = null;
String templateSelection = comboTemplateSelect.getSelectedItem().toString();
switch(templateSelection){
//case must match dropdown selections exactly
case "MRSA Culture Respiratory": fileName = "MRSARespiratory.txt";
case "Klebsiella Non-Culture Blood": fileName = "KlebsiellaMicro.txt";
default: fileName = "MRSARespiratory.txt";
break;
}
...
变量fileName
位于名为MainWindow.java的不同文件中的以下代码下:
static void getFullMicroArray() throws IOException
{
InputStream in = Data.class.getResourceAsStream("KlebsiellaMicro.txt");
BufferedReader reader = new BufferedReader(new InputStreamReader(in));
...
JButton btnLoadMicroTemplate = new JButton("Load Template");
btnLoadMicroTemplate.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String fileName = null;
String templateSelection = comboTemplateSelect.getSelectedItem().toString();
switch(templateSelection){
//case must match dropdown selections exactly
case "MRSA Culture Respiratory": fileName = "MRSARespiratory.txt";
case "Klebsiella Non-Culture Blood": fileName = "KlebsiellaMicro.txt";
default: fileName = "MRSARespiratory.txt";
break;
}
...
如何传递此文件名
变量以动态切换getResourceAsStream
中的文件名?实现此目的的一种方法是将Micro.java中的getFullMicroArray()函数更改为接受字符串变量getFullMicroArray(String fName)。然后在MainWindow.java中case语句的末尾调用getFullMicroArray(文件名)
然后在=Data.class.getResourceAsStream(“klebsielamicro.txt”)中更改InputStream
toInputStream in=Data.class.getResourceAsStream(fName)代码>