2016-10-12 1 views
-1

Я пытаюсь заполнить содержимое текстового файла табличным представлением в javafx. Ниже мой код:Как скопировать содержимое файла в таблицу в javafx

public static void loadFile() throws FileNotFoundException, IOException { 
    ObservableList<Song> songs = FXCollections.observableArrayList(); 
    File file = new File("songDATA.txt"); 
    FileReader reader = new FileReader(file); 
    BufferedReader br = new BufferedReader(reader); 
    String line; 
    while ((line = br.readLine()) != null) { 
    String[] song = line.split("//"); 
    songs.add(new Song(song[0], song[1], song[2], Double.parseDouble(song[3]), 
     Integer.parseInt(song[4]))); 

    } 
    reader.close(); 
} 

Но я быть дано сообщение об ошибке исключения:

Отработка C: \ Users \ пользователь \ Documents \ NetBeansProjects \ MusicLibrary \ расстояние \ run1361663306 \ MusicLi brary .jar с использованием платформы C: \ Program Files \ Java \ jdk1.8.0_74 \ JRE/бен/Java 13 октября, 2016 8:47:31 PM com.sun.javafx.binding.SelectBinding $ SelectBindingHelper getObservableValue ПРЕДУПРЕЖДЕНИЕ: Исключение при оценке select-binding [width] Oct 13, 2016 8: 47:31 PM com.sun.javafx.binding.SelectBinding $ SelectBindingHelper getObservableValue ВНИМАНИЕ: Исключение при оценке выбора связывания [высота] Исключение в потоке "JavaFX Application Thread" java.lang.RuntimeException: в javafx.fxml .FXMLLoader $ MethodHandler.invoke (FXMLLoader.java: 1774) в javafx.fxml.FXMLLoader $ ControllerMethodEventHandler.handle (FXMLLoader.java: 1657) в com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent (CompositeEventH andler.java:86) at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent (EventHandlerManag er.java:238) at com.sun.javafx.ev ent.EventHandlerManager.dispatchBubblingEvent (EventHandlerManag er.java:191) на com.sun.javafx.event.BasicEventDispatcher.dispatchEvent (BasicEventDispatcher.jav а: 58) на com.sun.javafx.event.EventDispatchChainImpl. dispatchEvent (Ev entDispatchChainImpl .java: 114) at com.sun.javafx.event.EventUtil.fireEventImpl (EventUtil.java: 74) at com.sun.javafx.event.EventUtil.fireEvent (EventUtil.java : 49) в javafx.event.Event.fireEvent (Event.java:198) на javafx.scene.control.MenuItem.fire (MenuItem.java:462) на com.sun.javafx.scene.control.skin .ContextMenuContent $ MenuIte mContainer.doSelect (ContextMenuContent.j ava: 1405) по адресу com.sun.javafx.scene.control.skin.ContextMenuContent $ MenuItemContainer.lambda $ CR eateChildren $ 343 (Con textMenuContent.java: 1358)

+0

и это мой текстовый файл ** J. Коул // Потерянные // Хип-хоп // 24.66 // 3000Erykah Badu // Время впустую // Neo-Soul // 24.66 // 4000Common // Книга жизни // Хип-хоп // 24.66 // 2000CommonGround // dasdsad // asdsadsad // 24.66 // 3000hoop // hoola // me // 44545.0 // 45566 ** – Tom

+3

post stacktrace –

+0

Эта трассировка ошибок ничего не делает с кодом, который вы отправили, поэтому, пожалуйста, разместите весь свой код, иначе невозможно сказать, что с ним не так. – DVarga

ответ

0

Этот след ошибка ничего не делает с кодом вы в курсе, но в любом случае ваш входной файл даже ошибочен.

В вашем файле есть неожиданные символы. И в четвертой строке "300 0" и в пятой строке "44 545,0" содержит:

Вы можете проверить это в ideone:

Выходы (первый столбец - символ второго символьного кода):

3 51 
0 48 
0 48 
‌ 8204 
​ 8203 
0 48 
-------------------- 
4 52 
4 52 
‌ 8204 
​ 8203 
5 53 
4 52 
5 53 
. 46 
0 48 
+0

Спасибо за ответы ребята, но, похоже, он не работает, верно ли приведенный выше код функции loadFile? – Tom

+0

Пожалуйста, обновите вопрос с помощью отслеживания исключений. – DVarga

+0

Привет, ребята, ниже следа исключений – Tom