我在活动中遇到了一个问题:我想从Ordinazioni.txt
上一个活动中正确写入的文件中读取所有文件,将它们放入一个并将其中的ArrayList
每个元素写入 MySQL 数据库。
现在,PHP 文件和文件是正确的,我已经单独检查了它和它们的工作,但此时 LogCat 阻止了应用程序。所以,这里是活动和 LogCat。
public class AggiungiProdotto extends Activity {
TextView tv1;
private static String indirizzo ="http://10.0.2.2/tesina/Aggiungi_Ordinazione";
FileInputStream in = null;
InputStreamReader inputStreamReader = new InputStreamReader(in);
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost(indirizzo);
StringBuilder sb = new StringBuilder();
int Tavolo = 1;
String line;
public ArrayList<String> Lettura = new ArrayList<String>();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.aggiungi_prodotto);
Invio();
}
public void Invio() {
try {
FileInputStream in = openFileInput("Ordinazioni.txt");
while ((line = bufferedReader.readLine()) != null) {
Lettura.add(line);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Thread thread = new Thread() {
@Override
public void run() {
try {
for (int i = 0; i < Lettura.size(); i++) {
List<NameValuePair> Comanda = new ArrayList<NameValuePair>(2);
Comanda.add(new BasicNameValuePair("Nome", Lettura.get(i)));
Comanda.add(new BasicNameValuePair("Tavolo",
Integer.toString(Tavolo).trim()));
httppost.setEntity(new UrlEncodedFormEntity(Comanda));
ResponseHandler<String> responseHandler =
new BasicResponseHandler();
final String Risposta = httpclient.execute(httppost,
responseHandler);
tv1 = (TextView) findViewById(R.id.tv1);
tv1.setText("Response : " + Risposta);
}
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
};
thread.start();
}
}
LogCat 错误:
03-14 18:40:42.028: E/AndroidRuntime(772): FATAL EXCEPTION: main
03-14 18:40:42.028: E/AndroidRuntime(772): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.gabriele.tesina/com.gabriele.tesina.AggiungiProdotto}: java.lang.NullPointerException: lock == null
03-14 18:40:42.028: E/AndroidRuntime(772): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2106)
03-14 18:40:42.028: E/AndroidRuntime(772): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
03-14 18:40:42.028: E/AndroidRuntime(772): at android.app.ActivityThread.access$600(ActivityThread.java:141)
03-14 18:40:42.028: E/AndroidRuntime(772): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
03-14 18:40:42.028: E/AndroidRuntime(772): at android.os.Handler.dispatchMessage(Handler.java:99)
03-14 18:40:42.028: E/AndroidRuntime(772): at android.os.Looper.loop(Looper.java:137)
03-14 18:40:42.028: E/AndroidRuntime(772): at android.app.ActivityThread.main(ActivityThread.java:5039)
03-14 18:40:42.028: E/AndroidRuntime(772): at java.lang.reflect.Method.invokeNative(Native Method)
03-14 18:40:42.028: E/AndroidRuntime(772): at java.lang.reflect.Method.invoke(Method.java:511)
03-14 18:40:42.028: E/AndroidRuntime(772): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
03-14 18:40:42.028: E/AndroidRuntime(772): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
03-14 18:40:42.028: E/AndroidRuntime(772): at dalvik.system.NativeStart.main(Native Method)
03-14 18:40:42.028: E/AndroidRuntime(772): Caused by: java.lang.NullPointerException: lock == null
03-14 18:40:42.028: E/AndroidRuntime(772): at java.io.Reader.<init>(Reader.java:64)
03-14 18:40:42.028: E/AndroidRuntime(772): at java.io.InputStreamReader.<init>(InputStreamReader.java:122)
03-14 18:40:42.028: E/AndroidRuntime(772): at java.io.InputStreamReader.<init>(InputStreamReader.java:59)
03-14 18:40:42.028: E/AndroidRuntime(772): at com.gabriele.tesina.AggiungiProdotto.<init>(AggiungiProdotto.java:32)
03-14 18:40:42.028: E/AndroidRuntime(772): at java.lang.Class.newInstanceImpl(Native Method)
03-14 18:40:42.028: E/AndroidRuntime(772): at java.lang.Class.newInstance(Class.java:1319)
03-14 18:40:42.028: E/AndroidRuntime(772): at android.app.Instrumentation.newActivity(Instrumentation.java:1054)
03-14 18:40:42.028: E/AndroidRuntime(772): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2097)
我在做什么错?