2016-04-11 17 views
0

Şu anda, kodlanmış olarak KlebsiellaMicro.txt olarak okumak için bir metin dosyası var. İhtiyacım olan şey, farklı bir java dosyasındaki şablon seçimine dayalı olarak farklı bir txtfile adını dinamik olarak çekmek için fileName değişkenidir. dosyanın Micro.java altındaJava'da InputStream/.getResourceAsStream (variableForTextFiles) için bir dosya tanımlamak için bir değişkeni nasıl kullanabilirim?

:

static void getFullMicroArray() throws IOException 
{ 
    InputStream in = Data.class.getResourceAsStream("KlebsiellaMicro.txt"); 
    BufferedReader reader = new BufferedReader(new InputStreamReader(in)); 
    ... 

değişken fileNameMainWindow.java adlı farklı dosyasında aşağıdaki kodu altında: Ben dinamik dosyayı geçmek için aracılığıyla bu fileName değişken geçirebilirsiniz nasıl

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 içindeki isimler?

cevap

0

Bunu başarmanın bir yolu, getFullMicroArray (String fName) bir String değişkenini almak için Micro.java'daki getFullMicroArray() işlevini değiştirmektir. Sonra MainWindow.java'daki büyük/küçük harf ifadesinin sonunda getFullMicroArray (dosyaAdı) çağırın.

Sonra İşe yaradı InputStream in = Data.class.getResourceAsStream("KlebsiellaMicro.txt");

+0

InputStream in = Data.class.getResourceAsStream(fName); değiştirmek, teşekkür ederim! –

İlgili konular