如何在Android上创build文本文件并将数据插入到该文件
我如何创buildfile.txt文件,并在我的代码中插入一些variables的内容,例如:population [] []; 在Android上,所以会有文件夹中的文件夹(data / data / ourpackage / files / ourfiles.txt)上的文件夹文件谢谢
使用这些代码,您可以在SDCard中编写一个文本文件,同时需要在Android清单中设置权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
这是代码:
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(); } }
在写入文件之前,请检查您的SD卡是否已安装,并且您的外部存储状态是可写的
Environment.getExternalStorageState()
检查android文档 。 实际上它与标准的java io文件处理没有多大区别,所以你也可以检查文档。
android文档中的一个例子:
String FILENAME = "hello_file"; String string = "hello world!"; FileOutputStream fos = openFileOutput(FILENAME, Context.MODE_PRIVATE); fos.write(string.getBytes()); fos.close();
如果你想创build一个文件并且多次写入和附加数据,那么使用下面的代码,如果不存在,它将创build文件,并且将会附加数据。
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(); }