Comment enregistrer analysée fichier texte en interne/externe de stockage dans android
Actuellement je travaille dans un projet où j'ai besoin d'analyser à distance un fichier texte et de le stocker dans des locaux de stockage (interne/externe). Je suis capable d'analyser le fichier texte, mais impossible de la stocker dans la carte sd. Voici mon code :
package com.exercise.AndroidInternetTxt;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.MalformedURLException;
import java.net.URL;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
import android.widget.Toast;
public class AndroidInternetTxt extends Activity {
TextView textMsg, textPrompt;
final String textSource = "http://sites.google.com/site/androidersite"
+ "/text.txt";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
textPrompt = (TextView) findViewById(R.id.textprompt);
textMsg = (TextView) findViewById(R.id.textmsg);
textPrompt.setText("Wait...");
URL textUrl;
try {
textUrl = new URL(textSource);
BufferedReader bufferReader = new BufferedReader(
new InputStreamReader(textUrl.openStream()));
String StringBuffer;
String stringText = "";
while ((StringBuffer = bufferReader.readLine()) != null) {
stringText += StringBuffer;
}
bufferReader.close();
textMsg.setText(stringText);
//Saving the parsed data.........
File myFile = new File("sdcard/mysdfile.txt");
if (!myFile.exists()) {
myFile.mkdirs();
}
myFile = new File("sdcard/mysdfile.txt");
myFile.createNewFile();
FileOutputStream fOut = new FileOutputStream(myFile);
OutputStreamWriter myOutWriter = new OutputStreamWriter(fOut);
myOutWriter.append(textMsg.getText());
myOutWriter.close();
fOut.close();
Toast.makeText(getBaseContext(), "Done writing SD 'mysdfile.txt'",
Toast.LENGTH_SHORT).show();
} catch (MalformedURLException e) {
e.printStackTrace();
textMsg.setText(e.toString());
} catch (IOException e) {
e.printStackTrace();
textMsg.setText(e.toString());
}
textPrompt.setText("Finished!");
}
}
Et voici mon fichier de manifeste -
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.exercise.AndroidInternetTxt"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk android:minSdkVersion="4" />
<uses-permission android:name="android.permission.INTERNET"/>
<application android:label="@string/app_name">
<activity android:name=".AndroidInternetTxt"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_INTERNAL_STORAGE"/>
</manifest>
Cependant, Ma Question est -
- Comment puis-je Stocker l'analyse des données de texte dans un fichier à l'intérieur de la carte sd ou la mémoire du Téléphone?
- Il n'y a aucun moyen de vérifier l'URL avec pré-définis intervalle à l'aide de la minuterie?
Un exemple de code est excellent pour moi.
Vous devez accepter la réponse si cela vous a aidé !
OriginalL'auteur Avijit Majumder | 2012-07-02
Vous devez vous connecter pour publier un commentaire.
Première chose, votre
AndroidManifest.xml
fichier est correct. Donc pas besoin de les corriger. Bien que je recommanderais l'organisation de vos autorisations en un seul endroit.De l'écriture du Fichier de Stockage Interne
Écriture de Fichiers sur une Carte SD Externe
Remarque: Si l'exécution sur un émulateur, vérifiez que vous avez activé le support de la Carte SD dans l'AVD propriétés et alloué approprié de l'espace.
Heureux de savoir qu'il a aidé. Veuillez accusé de réception. la réponse, si possible.
l'utilisation de stockage interne -
FileOutputStream fOut = openFileOutput("myinternalfile.txt",MODE_WORLD_READABLE); OutputStreamWriter osw = new OutputStreamWriter(fOut); //---write the contents to the file--- osw.write(strFileData); osw.flush(); osw.close();
et il fonctionne étonnamment..Merci encoreOriginalL'auteur Romin
Remplacer ces lignes
avec
//Sauvegarde de l'analyse de données.........
OriginalL'auteur user370305
Doit être modifié pour
OriginalL'auteur Vipul Shah