Wie man XML-Datei in Android zu erstellen

Guys Ich habe ein Problem, dass mein Code gibt eine Ausnahme als Berechtigung verweigert, wenn wir eine XML in Android schreiben. Kann jemand sagen, wie es wird entfernt werden.

package com.ex.createXml; import android.app.Activity; import android.os.Bundle; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import org.xmlpull.v1.XmlSerializer; import android.os.Environment; import android.util.Log; import android.util.Xml; import android.widget.TextView; public class createXml extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); File newxmlfile = new File("/data/new.xml"); try{ newxmlfile.createNewFile(); }catch(IOException e) { Log.e("IOException", "Exception in create new File("); } FileOutputStream fileos = null; try{ fileos = new FileOutputStream(newxmlfile); }catch(FileNotFoundException e) { Log.e("FileNotFoundException",e.toString()); } XmlSerializer serializer = Xml.newSerializer(); try{ serializer.setOutput(fileos, "UTF-8"); serializer.startDocument(null, Boolean.valueOf(true)); serializer.setFeature("http://xmlpull.org/v1/doc/features.html#indent-output", true); serializer.startTag(null, "root"); serializer.startTag(null, "Child1"); serializer.endTag(null, "Child1"); serializer.startTag(null, "Child2"); serializer.attribute(null, "attribute", "value"); serializer.endTag(null, "Child2"); serializer.startTag(null, "Child3"); serializer.text("Some text inside child 3"); serializer.endTag(null,"Child3"); serializer.endTag(null,"root"); serializer.endDocument(); serializer.flush(); fileos.close(); //TextView tv = (TextView)findViewById(R.); }catch(Exception e) { Log.e("Exception","Exception occured in wroting"); } } } 

  • Konvertieren von RemoteView in eine Ansicht
  • Vollständige Android-Unterstützung für OSGi-Bündel
  • Liste der Standard-Apps, die falsch in Android L zeigen
  • Android Studio kann die App nicht nach dem Erstellen starten, wenn ein Zeitstempel im Namen verwendet wird
  • Wie man Text vertikal zentriert in Android
  • Kein solches Instanzfeld
  • Android - Wie benutzt man die Kamera getSupportedPreviewSizes () für Hochformat
  • Android-Fehler "nicht in der Lage, explizite Aktivitätsklasse zu finden"
  • Slidedown und Slide-Layout mit Animation Android
  • Android Studio sieht keine genymotion
  • Zurück-Taste auf Android-Handys
  • Zoom und Panning ImageView Android
  • 7 Solutions collect form web for “Wie man XML-Datei in Android zu erstellen”

    Versuchen Sie dies zu erstellen oder lesen Datei in Android. Arbeiten mit Dateien

    Und zu erstellen / lesen XML-Datei versuchen Arbeiten mit XML

    Wenn Sie irgendwelche Demo-Projekt im Zusammenhang mit xml, als lassen Sie mich wissen, werde ich versuchen, Ihnen zu geben

     File newxmlfile = new File("C:/new.xml"); 

    Du versuchst, deine Datei auf Laufwerk C zu erstellen. Android ist ein Linux-basiertes System, also gibt es dort keine Laufwerke. Die Speichergeräte können an root ("/") oder einem anderen Ordner montiert werden.

    Für Ihre Anwendung /data/<pakcage-name> Ordner steht zur Verfügung. Versuche es zu schreiben. Außerdem kannst du versuchen, auf externe Speicherung zu schreiben, aber dein Progrma benötigt eine Erlaubnis, das zu tun:

      <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 

    Dies sollte in deiner Manifestdatei erwähnt werden.

    Lesen Sie hier mehr.

    Es scheint, als ob Sie versuchen, eine Datei an der Stelle von c: / zu erstellen, die keine gültige Pfadkennung auf einem Android-System ist. Android kommt aus einer Linux-Umgebung.

    http://developer.android.com/guide/topics/data/data-storage.html folgen Sie diesem Link, um mehr über die Datenspeicherung auf Android zu erfahren

    Wenn Sie eine Datei auf Ihrem lokalen PC erstellen möchten, müssen Sie sie zuerst auf Ihrem Android-Gerät erstellen und dann aus dem Gerät ziehen (entweder der Emulator oder Ihr echtes Handy)

    Du darfst nicht an diesen Ort schreiben.

     File newxmlfile = new File("/data/new.xml"); 

    Sie können es in den internen Speicher oder Cache speichern.

    Aufgrund des Android-Sicherheitsmodells können Sie nicht auf /data/new.xml schreiben. Das ist der Versuch, rechts auf das Root-Dateisystem zu gehen, weshalb du die Erlaubnis verweigert hast. Probieren Sie es ohne den Schrägstrich.

     FileOutputStream fos = openFileOutput("new.xml", MODE_PRIVATE); fos.write(...); 

    Das sollte es in Bezug auf Ihre app.

    Haben Sie dazu die nötige Erlaubnis hinzugefügt?

    http://developer.android.com/reference/android/Manifest.permission.html

    Berechtigung zum Schreiben auf die SD-Karte

    Sie können dies verwenden:

     File xmlDir = new File(Environment.getExternalStorageDirectory().getPath() + "/data/new.xml"); 
    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.