txt파일을 읽는데


1    홍길동    20000

2    임꺽정    21002

3    춘 향    122414

4    jamse lee    123123


이런식으로 txt가 되어있으면 띄어쓰기 단위로 읽으면

이름부분에서 잘못 읽힌다. (이름에 띄어쓰기가 들어갈 수 도 있으니까)


그래서 txt문서에 구분을 탭('\t') 으로 하고

읽을 때 한줄을 읽은다음 tab을 기준으로 스플릿해주면

각각 잘라 사용 할 수 있다.


//////////////////////////////////////////////////////////


private List<Product> saleList = new ArrayList<Product>();


public void loadMenu() {

File file = new File("test.txt");

String[] splitedStr = null;


try {

//한글 깨짐현상 때문에 인코딩

BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(file), "euc-kr"));


String line = null;

splitedStr = null;


while ((line = reader.readLine()) != null) {


splitedStr = null;

splitedStr = line.split("\t");


for (int i = 0; i < splitedStr.length; i++) {

splitedStr[i] = splitedStr[i].trim();

}

//자른 데이터를 원하는 형식에 맞게 넣기

saleList.add(new Product(splitedStr[0], splitedStr[1], Integer.valueOf(splitedStr[2])));

}


reader.close();


} catch (FileNotFoundException fnf) {

fnf.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

}

}

+ Recent posts