android寫入txt
1. 如何往安卓手機內存里添加TXT文件求助…
你好!
進到sd卡,把文件的名字後綴名填成txt就可以,打開re管理器,是新建文件直接用手機操作就可以,在選項里新建文件,記住
希望對你有所幫助,望採納。
2. Android TXT文件讀寫
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
String fileName = "/sdcard/y.txt";//文件路徑
// 也可以用String fileName = "mnt/sdcard/Y.txt";
String res = "";
try {
FileInputStream fin = new FileInputStream(fileName);
// FileInputStream fin = openFileInput(fileName);
// 用這個就不行了,必須用FileInputStream
int length = fin.available();
byte[] buffer = new byte[length];
fin.read(buffer);
res = EncodingUtils.getString(buffer, "UTF-8");////依Y.txt的編碼類型選擇合適的編碼,如果不調整會亂碼
fin.close();//關閉資源
System.out.println("res--->"+res);
int a=Integer.parseInt(res.substring(3, 5));
int b=Integer.parseInt(res.substring(8, 10));
System.out.println(a+"res--->"+b);//獲取的a.b
} catch (Exception e) {
e.printStackTrace();
}
}
希望能解決您的問題。
3. android 如何將List<EditView>中的數據寫入txt文件中
循環遍歷List
取出EditView中的數據
寫入文件
示例代碼如下:
public void writeDataToFile(List<EditView> list) {
for (EditView view:list
) {
FileManager.writeData(view.getText().toString()); // 封裝的文件讀寫類
}
}
4. android 如何讀寫文件
讀文件:
1、通過File獲取文件
2、打開輸入流,讀取文件
寫文件:
1、創建文件
2、打開輸出流,寫入文件內容
示例:
java">讀文件:
Stringcontent="";//文件內容字元串
//通過路徑/sdcard/foo.txt打開文件
Filefile=newFile("/sdcard/foo.txt");
try{
InputStreaminstream=newFileInputStream(file);//讀取輸入流
InputStreamReaderinputreader=newInputStreamReader(instream);//設置流讀取方式
BufferedReaderbuffreader=newBufferedReader(inputreader);
while((line=buffreader.readLine())!=null){
content+=line+" ";//讀取的文件內容
}
}catch(Exceptionex){
}
寫文件:
Filefile=newFile("/sdcard/foo.txt");//
if(!file.exists())
file.createNewFile();//如果文件不存在,創建foo.txt
try{
OutputStreamoutstream=newFileOutputStream(file);//設置輸出流
OutputStreamWriterout=newOutputStreamWriter(outstream);//設置內容輸出方式
out.write("文字內容");//輸出內容到文件中
out.close();
}catch(java.io.IOExceptione){
e.printStackTrace();
}
5. android 將數據寫入文件中並導出。
@Override
publicvoidonClick(Viewview){
Stringstate=Environment.getExternalStorageState();//獲取外部設備狀態
//檢測外部設備是否可用
if(!state.equals(Environment.MEDIA_MOUNTED)){
Toast.makeText(this,"外部設備不可用",Toast.LENGTH_SHORT).show();
return;
}
//創建文件
FilesdCard=Environment.getExternalStorageDirectory();//獲取外部設備的目錄
Filefile=newFile(sdCard,"文件名.txt");//文件位置
try{
FileOutputStreamoutputStream=newFileOutputStream(file);//打開文件輸出流
BufferedWriterwriter=newBufferedWriter(newOutputStreamWriter(outputStream));//寫入到緩存流
writer.write("這里是要寫入到文件的數據");//從從緩存流寫入
writer.close();//關閉流
Toast.makeText(this,"輸出成功",Toast.LENGTH_SHORT).show();
}
catch(Exceptionexception){
Toast.makeText(this,"輸出失敗",Toast.LENGTH_SHORT).show();
}
}
寫入到文件管理時需要許可權
<uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
6. 求問,android如何寫到文件 想將應用中一些edittext中的文本(有中文)寫到一個txt
今天剛寫了這個工具類,貼給你,很簡單的,就是用輸出流寫進緩沖位元組數組,然後保存進文件,至於文件的格式就自己隨便寫了,自己去優化和擴展吧。
public class FileStoreTools {
/**
*
* TODO:保存文件 根目錄 Author:Andy.Liu Create Time:2012-7-10 上午08:54:14 TAG:@return
* Return:String
*/
public static String getSDPath() {
boolean hasSDCard = Environment.getExternalStorageState().equals(
Environment.MEDIA_MOUNTED);
if (hasSDCard) {
return Environment.getExternalStorageDirectory().toString();
} else
return Environment.getDownloadCacheDirectory().toString();
}
/**
*
* TODO:保存文件
*/
public static void saveFile(String textString, String filePath,String fileName) {
FileOutputStream fos = null;
try {
File file = new File(filePath);
if (!file.exists())
file.mkdirs();
file = new File(filePath+fileName);
fos = new FileOutputStream(file);
fos.write(textString.getBytes());
fos.flush();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (null != fos)
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
/**
*
* TODO:讀取文件 Author:Andy.Liu Create Time:2012-7-10 上午08:48:40 TAG:@param
* filePath TAG:@return Return:String
*/
public static String readFile(String filePath) {
FileInputStream fis = null;
byte[] mByte = new byte[512];
try {
fis = new FileInputStream(new File(filePath));
fis.read(mByte);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (null != fis)
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return new String(mByte).toString();
}
}
7. Android 根目錄下讀寫.txt文件
//根目錄許可權不允許,放到/data/packeg_dir下或SD卡中
packagecom.example.demo;
Filedir=Environment.getDataDirectory();//獲取data目錄
//Environment.getExternalStorageDirectory();//獲取SD卡目錄
FileoutFile=newFile(dir,"/data/com.example.demo/text.txt");//只能在自己的程序包里建立文件,這是許可權問題
8. android 在手機中創建了txt文件,卻無法寫入數據,是為什麼
你是說不能編輯吧!在手機上下載一個文本編輯器,例如WPS OFFICE,下載安裝完成後,點擊進入首頁。進入後點下方的」+「號,點擊後就會彈出一個下拉框,選擇新建文檔,點擊後就會進入新建文檔模式,進入後點上面的」新建空白,點入後就會彈出編輯頁面,編輯好的文檔傳輸給電腦用WORD和WPS都能打開。
9. android如何保存int[]數組到txt里
將int數組內容轉換為字元串,然後以特定格式連接操作,然後存儲。
將int數組內容取出,tempstring=""+int[i]+",";循環取出
將tempstring存儲到txt文本中
以後讀取文本時,以","分割 取出
10. Android寫入txt文件
分以下幾個步驟:
首先對manifest注冊SD卡讀寫許可權
AndroidManifest.xml
<?xmlversion="1.0"encoding="utf-8"?>
<manifestxmlns:android="
package="com.tes.textsd"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="16"/>
<uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme">
<activity
android:name="com.tes.textsd.FileOperateActivity"
android:label="@string/app_name">
<intent-filter>
<actionandroid:name="android.intent.action.MAIN"/>
<categoryandroid:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>
</manifest>創建一個對SD卡中文件讀寫的類
FileHelper.java
/**
*@Title:FileHelper.java
*@Packagecom.tes.textsd
*@Description:TODO(用一句話描述該文件做什麼)
*@authorAlex.Z
*@date2013-2-26下午5:45:40
*@versionV1.0
*/
packagecom.tes.textsd;
importjava.io.DataOutputStream;
importjava.io.File;
importjava.io.FileOutputStream;
importjava.io.FileWriter;
importjava.io.FileInputStream;
importjava.io.FileNotFoundException;
importjava.io.IOException;
importandroid.content.Context;
importandroid.os.Environment;
publicclassFileHelper{
privateContextcontext;
/**SD卡是否存在**/
privatebooleanhasSD=false;
/**SD卡的路徑**/
privateStringSDPATH;
/**當前程序包的路徑**/
privateStringFILESPATH;
publicFileHelper(Contextcontext){
this.context=context;
hasSD=Environment.getExternalStorageState().equals(
android.os.Environment.MEDIA_MOUNTED);
SDPATH=Environment.getExternalStorageDirectory().getPath();
FILESPATH=this.context.getFilesDir().getPath();
}
/**
*在SD卡上創建文件
*
*@throwsIOException
*/
publicFilecreateSDFile(StringfileName)throwsIOException{
Filefile=newFile(SDPATH+"//"+fileName);
if(!file.exists()){
file.createNewFile();
}
returnfile;
}
/**
*刪除SD卡上的文件
*
*@paramfileName
*/
publicbooleandeleteSDFile(StringfileName){
Filefile=newFile(SDPATH+"//"+fileName);
if(file==null||!file.exists()||file.isDirectory())
returnfalse;
returnfile.delete();
}
/**
*寫入內容到SD卡中的txt文本中
*str為內容
*/
publicvoidwriteSDFile(Stringstr,StringfileName)
{
try{
FileWriterfw=newFileWriter(SDPATH+"//"+fileName);
Filef=newFile(SDPATH+"//"+fileName);
fw.write(str);
FileOutputStreamos=newFileOutputStream(f);
DataOutputStreamout=newDataOutputStream(os);
out.writeShort(2);
out.writeUTF("");
System.out.println(out);
fw.flush();
fw.close();
System.out.println(fw);
}catch(Exceptione){
}
}
/**
*讀取SD卡中文本文件
*
*@paramfileName
*@return
*/
publicStringreadSDFile(StringfileName){
StringBuffersb=newStringBuffer();
Filefile=newFile(SDPATH+"//"+fileName);
try{
FileInputStreamfis=newFileInputStream(file);
intc;
while((c=fis.read())!=-1){
sb.append((char)c);
}
fis.close();
}catch(FileNotFoundExceptione){
e.printStackTrace();
}catch(IOExceptione){
e.printStackTrace();
}
returnsb.toString();
}
publicStringgetFILESPATH(){
returnFILESPATH;
}
publicStringgetSDPATH(){
returnSDPATH;
}
publicbooleanhasSD(){
returnhasSD;
}
}寫一個用於檢測讀寫功能的的布局
main.xml
<?xmlversion="1.0"encoding="utf-8"?>
<LinearLayoutxmlns:android="
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<TextView
android:id="@+id/hasSDTextView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="hello"/>
<TextView
android:id="@+id/SDPathTextView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="hello"/>
<TextView
android:id="@+id/FILESpathTextView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="hello"/>
<TextView
android:id="@+id/createFileTextView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="false"/>
<TextView
android:id="@+id/readFileTextView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="false"/>
<TextView
android:id="@+id/deleteFileTextView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="false"/>
</LinearLayout>就是UI的類了
FileOperateActivity.class
/**
*@Title:FileOperateActivity.java
*@Packagecom.tes.textsd
*@Description:TODO(用一句話描述該文件做什麼)
*@authorAlex.Z
*@date2013-2-26下午5:47:28
*@versionV1.0
*/
packagecom.tes.textsd;
importjava.io.IOException;
importandroid.app.Activity;
importandroid.os.Bundle;
importandroid.widget.TextView;
{
privateTextViewhasSDTextView;
privateTextViewSDPathTextView;
;
;
;
;
privateFileHelperhelper;
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
hasSDTextView=(TextView)findViewById(R.id.hasSDTextView);
SDPathTextView=(TextView)findViewById(R.id.SDPathTextView);
FILESpathTextView=(TextView)findViewById(R.id.FILESpathTextView);
createFileTextView=(TextView)findViewById(R.id.createFileTextView);
readFileTextView=(TextView)findViewById(R.id.readFileTextView);
deleteFileTextView=(TextView)findViewById(R.id.deleteFileTextView);
helper=newFileHelper(getApplicationContext());
hasSDTextView.setText("SD卡是否存在:"+helper.hasSD());
SDPathTextView.setText("SD卡路徑:"+helper.getSDPATH());
FILESpathTextView.setText("包路徑:"+helper.getFILESPATH());
try{
createFileTextView.setText("創建文件:"
+helper.createSDFile("test.txt").getAbsolutePath());
}catch(IOExceptione){
e.printStackTrace();
}
deleteFileTextView.setText("刪除文件是否成功:"
+helper.deleteSDFile("xx.txt"));
helper.writeSDFile("1213212","test.txt");
readFileTextView.setText("讀取文件:"+helper.readSDFile("test.txt"));
}
}