我可以用我的應用程序發送一個http文章。 問題是,ä,ö等特殊字符不正確。httpurlconnection和特殊字符
這是我的代碼:
@Override
protected String doInBackground(String... params) {
try {
URL url = new URL("https://xxx");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
String urlParameters = "&name" + name;
connection.setRequestMethod("POST");
connection.setRequestProperty("Accept-Charset", "UTF-8");
connection.setDoOutput(true);
DataOutputStream dStream = new DataOutputStream(connection.getOutputStream());
dStream.writeBytes(urlParameters);
dStream.flush();
dStream.close();
} catch (MalformedURLException e) {
Log.e("-->", Log.getStackTraceString(e));
} catch (IOException e) {
Log.e("-->", Log.getStackTraceString(e));
}
return null;
}
這HTTP POST將發送到PHP文件,從而節省值名稱到數據庫中。
例子: 應用程序發送的值 「Getränke」 導致數據庫: 「GETR」
哪裏是我的錯?
我將它改爲'connection.setRequestProperty(「application/x-www-form-urlencoded」,「UTF-8」);?'但結果相同。和'dStream.writeBytes(urlParameters.getBytes(「UTF-8」));'做同樣的 – Stack108
沒問題,我找到了解決方案:'dStream.write(urlParameters.getBytes(「UTF-8」),0,urlParameters。 getBytes(「UTF-8」)。length);' – Stack108
@ Stack108是的,你也可以這樣做,它也應該可以工作。乾杯!! –