Чтение входного текстового файла и сравнение (Android)

У меня есть этот текстовый файл с именем params.txt, который состоит из:

3
WENSY WENDY
PING PING
CHLOE CHLOE

Мой вопрос: как я могу прочитать эти входы и сравнить две строки в одной строке? Сравните Венси и Венди и так далее..

Code:

public class MainActivity extends Activity {

    InputStream is=null;
    DataInputStream dis=null;
    Resources myResources = null;
    TextView tv=null;
    String someText;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    Button verify = (Button) findViewById (R.id.verify);
    myResources = this.getResources();
    tv = (TextView)findViewById(R.id.FileViewer);
    is = myResources.openRawResource(R.raw.params);
    dis = new DataInputStream(is);
    someText = null;

    verify.setOnClickListener(new OnClickListener(){

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            try{
                someText=dis.readLine();
                }catch(IOException ioe){
                someText ="Couldn't read the file";
                }
                tv.setText(someText);           
        }
    });


    }


}

Могу ли я сохранить входной текст в строковой переменной? Или есть другой простой способ сделать это? Спасибо :))


person pingboo23    schedule 02.10.2013    source источник
comment
Добавлен код @newuser. Я не знаю, как сравнить две строки.   -  person pingboo23    schedule 02.10.2013


Ответы (3)


Попробуйте разделить ()

String[] splittedValues = someText.split(" ");
if (splittedValues[0].equalsIgnoreCase(splittedValues[1]))
  {
      // do your process
  }
person newuser    schedule 02.10.2013

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

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

String[] parts = line.split(" ");

Затем вы можете сравнить каждую часть, используя parts[0] и parts[1]. Пример:

if(parts[0].equals(parts[1])) {
    doSomething();
}
person Martin Wachocki    schedule 02.10.2013

После вашего someText = dis.readLine();

String[] split = someText.split(" ");
if (split[0].equals(split[1]){
    Log.i("MainActivity", "strings are equal");
}else{
    Log.i("MainActivity", "strings are not equal");
}

Будет сравниваться, чтобы увидеть, равны ли строки. в противном случае вы можете использовать String.compareTo(otherString); для сравнения.

person panini    schedule 02.10.2013