Un archivo de texto en Android se puede utilizar para múltiples propósitos funcionales. Se puede mantener en privado para almacenar información crucial y datos confidenciales. También se puede usar para almacenar información básica que la aplicación, en varios casos, puede usar. Como los archivos de texto no imponen límites en la entrada y el almacenamiento, pueden servir como uno de los métodos más eficientes para almacenar datos.
Entonces, en este artículo, le mostraremos cómo puede insertar y obtener texto de un archivo de texto en Android.
Implementación paso a paso
Paso 1: crea un nuevo proyecto en Android Studio
Para crear un nuevo proyecto en Android Studio, consulte Cómo crear/iniciar un nuevo proyecto en Android Studio . Demostramos la aplicación en Kotlin , así que asegúrese de seleccionar Kotlin como idioma principal al crear un nuevo proyecto.
Paso 2: trabajar con el archivo activity_main.xml
Vaya a la aplicación > res > diseño > actividad_principal.xml y agregue el siguiente código a ese archivo. A continuación se muestra el código para el archivo activity_main.xml . Agregue EditText , Two Buttons y TextView en el archivo de diseño. EditText tomará la string de entrada. El botón 1 guardará la string en un archivo de texto cuando se active. El botón 2, cuando se active, mostrará los datos del archivo de texto en TextView.
XML
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <EditText android:id="@+id/edit_text" android:layout_width="match_parent" android:layout_height="50sp"/> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_below="@id/edit_text" android:text="Save"/> <Button android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_below="@id/button1" android:text="Show"/> <TextView android:id="@+id/text_view" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_below="@id/button2"/> </RelativeLayout>
Paso 3: trabajar con el archivo MainActivity.kt
Vaya al archivo MainActivity.kt y consulte el siguiente código. A continuación se muestra el código del archivo MainActivity.kt . Se agregan comentarios dentro del código para comprender el código con más detalle.
Kotlin
import android.content.Context import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.widget.Button import android.widget.EditText import android.widget.TextView import android.widget.Toast import java.io.InputStreamReader import java.io.OutputStreamWriter import java.lang.Exception class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) // Declaring EditText, Buttons and TextViews from the layout file val mEditText = findViewById<EditText>(R.id.edit_text) val mButtonSave = findViewById<Button>(R.id.button1) val mButtonShow = findViewById<Button>(R.id.button2) val mTextView = findViewById<TextView>(R.id.text_view) // What happens when Save Button is pressed mButtonSave.setOnClickListener { if(mEditText.text.toString().isNotEmpty()){ // For First time: Creates a text file and writes string into it // Else: Opens the text file and writes the string try { val fileOutputStream = openFileOutput("mytextfile.txt", Context.MODE_PRIVATE) val outputWriter = OutputStreamWriter(fileOutputStream) outputWriter.write(mEditText.text.toString()) outputWriter.close() Toast.makeText(baseContext, "File saved successfully!", Toast.LENGTH_SHORT).show() } catch (e: Exception) { e.printStackTrace() } } else { Toast.makeText(applicationContext, "No input?", Toast.LENGTH_SHORT).show() } } // What happens when show button is pressed mButtonShow.setOnClickListener { // Tries to fetch data from the text file try { val fileInputStream = openFileInput("mytextfile.txt") val inputReader = InputStreamReader(fileInputStream) val output = inputReader.readText() // Data is displayed in the TextView mTextView.text = output } catch (e: Exception) { e.printStackTrace() } } } }
Producción:
Puede ver que podemos escribir y leer datos del archivo de texto.
Publicación traducida automáticamente
Artículo escrito por aashaypawar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA