'a bir .txt dosyası almak için kullanıyorum Şu anda bir öğrencinin kayıt olabileceği bir JList dersi gösteren bir proje üzerinde çalışıyorum. Liste öğesine tıklandığında, txt dosyalarının adını almak için setTextArea() yöntemine bir değişken iletilir. Örneğin, Bilgisayar Bilimi üzerine tıklarsam, txt dosyasını almak için bir courseName değişkeni iletilir ve URL'ye eklenir.getClass(). GetResource öğesini bir JTextArea
Bu mükemmel çalışıyor. JAR dosyasını kullandığım zamanlar hariç. Biliyorum .getClass() ve getResource() bir JAR kullanırken kaynaklara erişmek için kullanılmalıdır. Ama benim çalışmamı elde edemiyorum. İşte ben orijinal kodu vardı.
public void valueChanged(ListSelectionEvent e)
{
int selectionNum = courseList.getSelectedIndex();
String courseName;
//Switch statement to pass strings to method
switch(selectionNum)
{
case 0: courseName = "computer_science";
setTextArea(courseName);
currentCourseClicked ="0";
break;
case 1: courseName = "business";
setTextArea(courseName);
currentCourseClicked ="1";
break;
case 2: courseName = "business2";
setTextArea(courseName);
currentCourseClicked ="2";
break;
case 3: courseName = "engineering";
setTextArea(courseName);
currentCourseClicked ="3";
break;
case 4: courseName = "sport";
setTextArea(courseName);
currentCourseClicked ="4";
break;
case 5: courseName = "early";
setTextArea(courseName);
currentCourseClicked ="5";
break;
case 6: courseName = "social";
setTextArea(courseName);
currentCourseClicked ="6";
break;
}
} //End of valuesChanges Method
/**
* This method is used to read the file, with the course name passed
* from the valueChanged method.
* @param courseName
*/
@SuppressWarnings("resource")
public void setTextArea(String courseName)
{
descriptionPanel.setVisible(true);
enrol.setVisible(true);
enrol.setFont(new Font("", Font.BOLD, 20));
try
{
//This retrieves the information from a text file
FileReader file = new FileReader("./res/courseInfo/" +courseName + ".txt");
Scanner fileReaderScan = new Scanner(file);
String storeAll = "";
//while loop to read trough lines of the text file
while(fileReaderScan.hasNextLine())
{
String temp = fileReaderScan.nextLine() + "\n";
storeAll += temp;
}
descriptionTextArea.setText(storeAll);
}
catch (FileNotFoundException e1)
{
e1.printStackTrace();
}
} //end of setTextArea method
Daha sonra getClass ve getResource kullanmaya çalıştım. ancak bir URL ile çalışmaz ve URL
türünü String
olarak değiştirmemi ister. Eğer bunu yaparsam, getClass ve getResource işe yaramaz.
String urlString = url + "";
kullanarak dizeye url bitiştirmek çalıştı ama bu da işe yaramadı.
Bununla ilgili nasıl bir fikir var?
şudur:
Scanner
ile çalışıyorsanız bu yanaSana tamamen FileReader kaldırmak ve yerine Tarayıcı nesneyi başlatmak için bu hattı kullanmak önermek? Kavanoz dosyanızda mı? Eğer tam olarak nerede varsa? –
Url, FileReader'da çalışmadığından. 'Url 'bir String türüne dönüştürmeyi ister. Ama bunu yaptığımda getClass(). GetResource çalışmıyor. – Aaronward
Ne demek istiyorsun * "JAR Dosyasını kullandığımda hariç" *? – aribeiro