En el desarrollo de Android, cómo guardar los datos con saltos de línea en el cuadro de entrada en un archivo TXT, conservando los saltos de línea, y debe haber saltos de línea al abrir el TXT en la computadora.
Lo probé específicamente y agregué información de depuración a mi código
String user = _loginUser.getText().toString();
int firstCR = user.indexOf("\n");
_loginUser es EditText en mi interfaz de usuario, en el que ingresé 3 líneas de texto. Para cada línea de texto, presioné manualmente la tecla Enter para cambiar la línea. , por lo que el texto extraído tiene saltos de línea.
Pero si permites que EditText se ajuste automáticamente después de que la entrada esté completa, se eliminará sin saltos de línea. En realidad, esto tiene sentido. El ajuste de línea automático no insertará saltos de línea. Simplemente parecen saltos de línea debido a los límites de la interfaz de usuario.
Creo que hay una manera fácil de solucionarlo.
int lineCount = _loginUser.getLineCount();
De esta manera puedes obtener el número de líneas en EditTex
Compáralo con el '\n' encontrado Dentro de Cantidad, sabrás cuál es probablemente la situación de tu texto.
1 Si el número de líneas y el número de \n coinciden, significa que cada línea es el método más simple de retorno de carro y avance de línea manual, y se puede guardar directamente.
2 Si \n es 0, significa que ui ajusta automáticamente las líneas. Esto también es simple. Calcule el número total de palabras y líneas para saber cuántas líneas hay y cuántas palabras por línea. luego inserte saltos de línea al guardar el símbolo. Por supuesto, esto no es muy exacto y se considera un compromiso.
3 Si no es correcto, significa que hay un ajuste de línea automático o un ajuste de línea manual. Esto en realidad es muy problemático. Puede consultar el método en 2 para resolverlo.
En resumen, no existe una buena manera; después de todo, EditText no puede obtener texto por número de línea.
Puedes sobrescribir una subclase de EditText tú mismo para proporcionar dicho método.