2014-11-23 2 views
0

У меня есть метод, который считывает некоторые данные из файла (на самом деле это время шины).
Как развернуть файлы в JAR?

public void readData(String number) throws IOException{ 
    InputStream fis; 
    BufferedReader br; 
    String line; 
    fis = new FileInputStream("n" + number); 
    br = new BufferedReader(new InputStreamReader(fis, Charset.forName("UTF-8"))); 
    while ((line = br.readLine()) != null) { 
     list.add(new Time(line)); 
    } 
    br.close(); 
} 

И у меня есть файлы в проекте с необходимой информацией.
Но! (Я пишу в Intellij IDEA, но развертываю в Eclipse)
Когда я развертываю проект, моя программа не видит файлы.
Что мне делать?
О думающем о fis = RaspFrame.class.getClassLoader().getResourceAsStream("n" + number); Справа?

+1

хорошо, что происходит, когда вы пытаетесь? :) Если вы думаете, что у вас есть идея, дайте ей поехать! – yts

ответ

0

"думает о:

fis = RaspFrame.class.getClassLoader().getResourceAsStream("n" + number); 

правильно"

Да. Это (грубо говоря) способ открыть поток для ресурса, хранящегося в JAR-файле в вашем пути к классам.

(Ваш существующий код на самом деле читает файлы из файловой системы. Предполагается, что он работает из вашей среды IDE, поскольку копии файлов хранятся в каталоге проекта IDE, а среда IDE делает каталог проекта " текущий каталог "при запуске программы.)

Смежные вопросы