Чтение входного текстового файла и сравнение (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);
}
});
}
}
Могу ли я сохранить введенный текст в строковой переменной? Или есть еще один простой способ сделать это? благодарю вас:))
3 ответа
Попробуй, разбей ()
String[] splittedValues = someText.split(" ");
if (splittedValues[0].equalsIgnoreCase(splittedValues[1]))
{
// do your process
}
Вы можете прочитать ответы здесь, чтобы понять, как читать файл построчно.
Затем, чтобы сравнить две части каждой строки, вы можете разделить их, выполнив это:
String[] parts = line.split(" ");
Затем вы можете сравнить каждую часть, используя parts[0]
а также parts[1]
, Пример:
if(parts[0].equals(parts[1])) {
doSomething();
}
После вашего 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);
для сравнения.