Wie fügen Sie die Daten in eine Datei in android
Kann mir jemand sagen, wie Anhängen von Daten an eine Datei, die bereits Daten in Android?
Ich schrieb einige code, aber es funktioniert nicht. Dies ist meine Aktivität:
package updatefile.developer.com.updatefiledemo;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.PrintStream;
import java.nio.Buffer;
public class MainActivity extends ActionBarActivity {
Button create,update;
String data = "This is a sample";
File file;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
create = (Button)findViewById(R.id.btn_create);
create.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
File folder = new File("/sdcard/demo");
folder.mkdirs();
file = new File("/sdcard/demo/demotext.txt");
try {
FileOutputStream fileinput = new FileOutputStream(file);
PrintStream printstream = new PrintStream(fileinput);
printstream.print(data+"\n");
fileinput.close();
} catch (Exception e) {
Toast.makeText(MainActivity.this,e.getMessage(),Toast.LENGTH_SHORT).show();
}
}
});
update = (Button)findViewById(R.id.btn_update);
update.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(!file.exists()) {
try {
file.createNewFile();
} catch (Exception e) {
Toast.makeText(MainActivity.this,e.getMessage(),Toast.LENGTH_SHORT).show();
}
}
try {
OutputStreamWriter file_writer = new OutputStreamWriter(new FileOutputStream(file,true));
BufferedWriter buffered_writer = new BufferedWriter(file_writer);
buffered_writer.write("This is a appended text");
buffered_writer.close();
} catch (IOException e) {
e.printStackTrace();
}
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
//Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
//Handle action bar item clicks here. The action bar will
//automatically handle clicks on the Home/Up button, so long
//as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}
finden Sie hier stackoverflow.com/questions/4542318/android-append-text-file
InformationsquelleAutor RD Division Medequip | 2015-03-25
Du musst angemeldet sein, um einen Kommentar abzugeben.
FileOutputStream fileinput = new FileOutputStream(file, true);
War es ein einfacher Fehler, weil die Einstellung nicht Anhängen Flagge zu
true
. Nur setzen Sie ihn auf true.Ist das Standardverhalten überschreiben der Inhalt der Datei 🙂
InformationsquelleAutor MeshBoy
Das einzige, was Sie tun müssen ist, fügen Sie einfach ein
"true" to FileOutputStream
wieHier ist die Dokumentation
InformationsquelleAutor Don Chakkappan
InformationsquelleAutor
InformationsquelleAutor Alka Jadav