Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > Строки!!


Автор: Marish 27.11.2010, 19:15
Вопрос по Java. Есть текстовый файл с цифрами в виде:
111 222 333 444
555 666 777 888
999 000 123 456
Нужно: из каждой строки взять, например, второй и четвертый ряд (т.е. для первой это будет 222 444, для второй 666 888 и т.д.) и вывести результат в новый текстовый файл, т.е. фактически выбрать определенные символы из строк (для всех строк алгоритм выбора одинаковый). Кто знает как это реализовать? Спасибо!

Считываю селектнутый файл и записываю его в новый таким образом. Вопрос в том, как изменить нужным образом записанные в buff данные из файла. 

Код

file = chooser.getSelectedFile();
try{
InputStream fileInpStream = new FileInputStream(file);
 int size=fileInpStream.available();
fileInpStream.close();
//buff - массив в который считываем весь файл
char[] buff=new char[size];
Reader fileReadStream=new FileReader(file);
int count=fileReadStream.read(buff);
FileWriter f=new FileWriter (file.getName()+"_edit.txt");
PrintWriter out=new PrintWriter (f);
out.print (String.copyValueOf(buff));
out.close();
    }catch(Exception ex){
    }
}

Автор: jGorets 27.11.2010, 19:34
а регулярные выражения подходят?

Автор: Nofate 27.11.2010, 21:00
почему бы не использовать java.util.Scanner?

Автор: Marish 28.11.2010, 19:13
Цитата(Nofate @ 27.11.2010,  21:00)
почему бы не использовать java.util.Scanner?

со сканером все получилось, спасибо!))  Единственная проблема: как быть если цифры в строках разделены разным количеством пробелов, а не одним? Примерно так:

111  222                333        444
555                666      777         888

Возможен ли разделитель, который бы учитывал просто отсутствие каких бы то ни было символов, кроме пробела? Либо просто несколько разделителей с разным количеством пробелов (от 1 до 10, например)?

Заранее спасибо!!

Автор: dorogoyIV 28.11.2010, 20:06
да какие проблемы?!  smile 
в регулярку заносишь пробел, табулятор, перенос строки, ...

Цитата(Marish @  28.11.2010,  19:13 Найти цитируемый пост)
с разным количеством пробелов (от 1 до 10, например)

на то есть регулярные выражения  smile 

Автор: Marish 28.11.2010, 21:12
Цитата(dorogoyIV @ 28.11.2010,  20:06)
да какие проблемы?!  smile 
в регулярку заносишь пробел, табулятор, перенос строки, ...

Цитата(Marish @  28.11.2010,  19:13 Найти цитируемый пост)
с разным количеством пробелов (от 1 до 10, например)

на то есть регулярные выражения  smile

Спасибо!! Все получилось!)))

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)