2013-05-23 1 views
-1

Im собираюсь написать программу бронирования отеля для моего последнего года в школе. Я собираюсь использовать текстовый файл, чтобы иметь всех гостей, чьи атрибуты включают: имя, фамилию, контактные данные и т. Д., И я хочу прочитать эти атрибуты обратно в текстовые поля, в которые они были введены, но они будут теми же полями и ярлыки и все, но на другой странице. Я буду использовать StringTokenizer при записи в файл, чтобы он был, например, a '#', отделяющий каждый атрибут.Чтение небольших частей текстового файла в текстовое поле в графическом интерфейсе

Может кто-нибудь помочь с чтением каждого атрибута отдельно в отдельные текстовые поля, например, текстовый файл будет выглядеть примерно так:

Sam#Haden#samhaden[email protected]#7562234#

, и я хочу, чтобы каждый атрибут для чтения в отдельном текстовом поле.

+2

Покажите нам, что вы пробовали до сих пор, и что не работает. –

+2

Сначала напишите код, и если вы столкнулись с проблемой, отправьте его здесь. Лучший способ учиться. –

ответ

0

Вы можете использовать String.indexOf ("#"), чтобы найти хэш-тег, а затем использовать этот индекс для создания подстроки только с первым элементом и подстрокой остальных элементов. Затем повторите процесс, пока все не будет разделено на отдельные текстовые поля.

+2

Как насчет метода String # split()? –

+0

@RaviThapliyal: ваш комментарий лучше, чем ответ smoothButter, и я думаю, что вы должны ответить на этот комментарий. –

+2

Полностью забыл об этом. Я согласен, ответ Рави - гораздо лучшее решение. –

1

Использование

split('#') 

он будет возвращать массив ... читать из различных индексов для заполнения поля.

1

вы могли бы рассмотреть возможность использовать сплиттер из библиотеки Google-гуавы, как это:

import com.google.common.base.Splitter; 
import com.google.common.collect.Iterables; 

Iterable<String> fieldset = Splitter.on("#").split("Sam#Haden#[email protected]#7562234#"); 

for(final String s : fieldset) { 
    System.out.println(s); 
} 

полей доступа по индексу:

Iterables.get(fieldset, 2); // returns "samhaden" 
+0

Спасибо, Стив, пробовав это. Я просто планировал свою программу, когда хотел узнать, не стоит ли это делать. Это кажется приличным. Я еще не написал никакого кода. Также только мой проект теперь для моего проекта – Gordy

+0

Я просто попытался импортировать библиотеку guava, она говорит, что не существует – Gordy