Cómo crear un archivo de texto e insertar datos en ese archivo en Android

¿Cómo puedo crear file.txt e insertar datos en el archivo con el contenido de algunas variables en mi código, por ejemplo: population [] []; en Android, entonces habrá archivos de carpeta en nuestro paquete en el explorador de archivos (data / data / ourpackage / files / ourfiles.txt) Gracias

Usando este código puedes escribir un archivo de texto en la tarjeta SD. Junto con esto, debe establecer el permiso en el manifiesto de Android.

 

Este es el código:

 public void generateNoteOnSD(Context context, String sFileName, String sBody) { try { File root = new File(Environment.getExternalStorageDirectory(), "Notes"); if (!root.exists()) { root.mkdirs(); } File gpxfile = new File(root, sFileName); FileWriter writer = new FileWriter(gpxfile); writer.append(sBody); writer.flush(); writer.close(); Toast.makeText(context, "Saved", Toast.LENGTH_SHORT).show(); } catch (IOException e) { e.printStackTrace(); } } 

Antes de escribir archivos, también verifique si su tarjeta SD está montada y su estado de almacenamiento externo es escribible.

 Environment.getExternalStorageState() 

Verifica la documentación de Android . De hecho, no es muy diferente al manejo de archivos estándar de Java, por lo que también podría verificar esa documentación.

Un ejemplo de la documentación de Android:

 String FILENAME = "hello_file"; String string = "hello world!"; FileOutputStream fos = openFileOutput(FILENAME, Context.MODE_PRIVATE); fos.write(string.getBytes()); fos.close(); 

Si desea crear un archivo y escribir y anexar datos muchas veces, utilice el siguiente código, creará el archivo si no sale y anexará datos si existen.

  SimpleDateFormat formatter = new SimpleDateFormat("yyyy_MM_dd"); Date now = new Date(); String fileName = formatter.format(now) + ".txt";//like 2016_01_12.txt try { File root = new File(Environment.getExternalStorageDirectory()+File.separator+"Music_Folder", "Report Files"); //File root = new File(Environment.getExternalStorageDirectory(), "Notes"); if (!root.exists()) { root.mkdirs(); } File gpxfile = new File(root, fileName); FileWriter writer = new FileWriter(gpxfile,true); writer.append(sBody+"\n\n"); writer.flush(); writer.close(); Toast.makeText(this, "Data has been written to Report File", Toast.LENGTH_SHORT).show(); } catch(IOException e) { e.printStackTrace(); } 
 First create a Project With PdfCreation in Android Studio Then Follow below steps: 1.Download itextpdf-5.3.2.jar library from this link [https://sourceforge.net/projects/itext/files/iText/iText5.3.2/][1] and then 2.Add to app>libs>itextpdf-5.3.2.jar 3.Right click on jar file then click on add to library 4. Document document = new Document(PageSize.A4); // Create Directory in External Storage String root = Environment.getExternalStorageDirectory().toString(); File myDir = new File(root + "/PDF"); System.out.print(myDir.toString()); myDir.mkdirs(); // Create Pdf Writer for Writting into New Created Document try { PdfWriter.getInstance(document, new FileOutputStream(FILE)); } catch (DocumentException e) { e.printStackTrace(); } catch (FileNotFoundException e) { e.printStackTrace(); } // Open Document for Writting into document document.open(); // User Define Method addMetaData(document); try { addTitlePage(document); } catch (DocumentException e) { e.printStackTrace(); } // Close Document after writting all content document.close(); 5. public void addMetaData(Document document) { document.addTitle("RESUME"); document.addSubject("Person Info"); document.addKeywords("Personal, Education, Skills"); document.addAuthor("TAG"); document.addCreator("TAG"); } public void addTitlePage(Document document) throws DocumentException { // Font Style for Document Font catFont = new Font(Font.FontFamily.TIMES_ROMAN, 18, Font.BOLD); Font titleFont = new Font(Font.FontFamily.TIMES_ROMAN, 22, Font.BOLD | Font.UNDERLINE, BaseColor.GRAY); Font smallBold = new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD); Font normal = new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL); // Start New Paragraph Paragraph prHead = new Paragraph(); // Set Font in this Paragraph prHead.setFont(titleFont); // Add item into Paragraph prHead.add("RESUME – Name\n"); // Create Table into Document with 1 Row PdfPTable myTable = new PdfPTable(1); // 100.0f mean width of table is same as Document size myTable.setWidthPercentage(100.0f); // Create New Cell into Table PdfPCell myCell = new PdfPCell(new Paragraph("")); myCell.setBorder(Rectangle.BOTTOM); // Add Cell into Table myTable.addCell(myCell); prHead.setFont(catFont); prHead.add("\nName1 Name2\n"); prHead.setAlignment(Element.ALIGN_CENTER); // Add all above details into Document document.add(prHead); document.add(myTable); document.add(myTable); // Now Start another New Paragraph Paragraph prPersinalInfo = new Paragraph(); prPersinalInfo.setFont(smallBold); prPersinalInfo.add("Address 1\n"); prPersinalInfo.add("Address 2\n"); prPersinalInfo.add("City: SanFran. State: CA\n"); prPersinalInfo.add("Country: USA Zip Code: 000001\n"); prPersinalInfo.add("Mobile: 9999999999 Fax: 1111111 Email: john_pit@gmail.com \n"); prPersinalInfo.setAlignment(Element.ALIGN_CENTER); document.add(prPersinalInfo); document.add(myTable); document.add(myTable); Paragraph prProfile = new Paragraph(); prProfile.setFont(smallBold); prProfile.add("\n \n Profile : \n "); prProfile.setFont(normal); prProfile.add("\nI am Mr. XYZ. I am Android Application Developer at TAG."); prProfile.setFont(smallBold); document.add(prProfile); // Create new Page in PDF document.newPage(); }