ورود

View Full Version : آموزش: خواندن فایل متنی بزرگ



golsa_6
چهارشنبه 22 آذر 1391, 16:07 عصر
با سلام و خسته نباشید خدمت دوستان عزیز

میخواهم در برنامه ام یک فایل متنی را بخوانم و کلمه به کلمه ی آن را جدا کنم.

اگر از کلاس توکنایزر جاوا استفاده کنم، باید تمام متن را بریزم در یک رشته، از آنجا که متن درون فایل ممکن است طولانی باشد، در یک رشته جا نمی شود.

میخواستم ببینم پیشنهاد شما برای خواندن کلمه به کلمه از فایل های متنی چیست؟؟

شاید بگویید اول خط به خط فایل را بخوانم. اما این کار هم برای وقتی که تماااااااااام متن در یک خط باشد، ممکن نیست.

این کلمه ها را میخواهم دانه دانه در یک لینک لیست بریزم.

همایون افشاری
چهارشنبه 22 آذر 1391, 20:01 عصر
import java.io.FileInputStream;
import java.util.ArrayList;
import java.util.StringTokenizer;

public class Main {

public static void main(String[] args) throws Exception {
int SPACE_CHAR_INT = 32;
int SPACE_COUNT = 30;
int count = 0;
FileInputStream fis = new FileInputStream("/home/homayoun/Desktop/bigfile");
StringTokenizer stringTokenizer;
ArrayList<String> tokenList = new ArrayList<String>();
while (true) {
String string = "";
while (true) {
int c = fis.read();
if (c == -1)
break;
string += (char) c;
if (c == SPACE_CHAR_INT)
if (count++ > SPACE_COUNT)
break;
}
if (string.length() == 0)
break;
stringTokenizer = new StringTokenizer(string);
while (stringTokenizer.hasMoreTokens())
tokenList.add(stringTokenizer.nextToken(" \t\n"));
}
System.out.println(tokenList);
}
}


کد ساده ایه. اگه متوجه کارش نشدید بگید تا توضیح بدم.