我有一个文字:"Csuklásirohamgyötörhetiasvédeket,annyitemlegetikmostanságismétssvédmodelltMagyarországon."
在原始文本中根本没有换行符.
当我通过电子邮件发送此文本(使用gmail)时,我将其编码如下:
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
Csukl=E1si roham gy=F6t=F6rheti a sv=E9deket, annyit emlegetik mostans=E1g =
ism=E9t a
sv=E9d modellt Magyarorsz=E1gon.
Run Code Online (Sandbox Code Playgroud)
在HTML中:
Content-Type: text/html; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
<span class=3D"Apple-style-span" style=3D"font-family: Helvetica, Verdana, = sans-serif; font-size: 15px; ">Csukl=E1si roham gy=F6t=F6rheti a sv=E9deket= , annyit emlegetik mostans=E1g ism=E9t a sv=E9d modellt Magyarorsz=E1gon.
Run Code Online (Sandbox Code Playgroud)
....
当我尝试将电子邮件正文解析为text/plain时,我无法摆脱两个单词之间的"mostans = E1g = ism = E9t"中的=符号.请注意,HTML编码消息中缺少相同的字符.我不知道那个特殊字符可能是什么,但我需要消除它以取回原始文本.
我试图替换'\n',但它不是那个,如果我在文本中点击'Enter',我可以正确地将它替换为我想要的任何字符.我也试过'\ r'和'\ t'.
所以问题是,我错过了什么?这个特殊角色来自哪里?是因为charser和/或传输编码?如果是这样,我该怎么做才能解决问题并获取原始文本.
欢迎任何帮助.
干杯,巴拉兹
我正在开发一个使用Apache Commons IO的 Android 应用程序,commons-io-2.4-bin.tar.gz。
我得到了一些错误,其中之一:
Could not find method java.lang.String.getBytes, referenced from method org.apache.commons.io.IOUtils.toInputStream
Run Code Online (Sandbox Code Playgroud)
我想我不必担心,不是吗?
我可以使用另一个特定的 Android 库来代替 Apache Commons IO 吗?
我在这里使用它:
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import org.apache.commons.io.IOUtils;
import org.springframework.http.client.ClientHttpResponse;
import org.springframework.web.client.DefaultResponseErrorHandler;
import org.springframework.web.client.ResponseErrorHandler;
import android.util.Log;
public class CustomResponseErrorHandler implements ResponseErrorHandler
{
private ResponseErrorHandler errorHandler = new DefaultResponseErrorHandler();
@Override
public void handleError(ClientHttpResponse response) throws IOException
{
String theString = IOUtils.toString(response.getBody());
Log.v("Error Handler", theString);
CustomException exception = new CustomException();
Map<String, Object> properties = …
Run Code Online (Sandbox Code Playgroud) 我有以下Java代码来获取给定URL的HTML页面的全部内容.这可以以更有效的方式完成吗?欢迎任何改进.
public static String getHTML(final String url) throws IOException {
if (url == null || url.length() == 0) {
throw new IllegalArgumentException("url cannot be null or empty");
}
final HttpURLConnection conn = (HttpURLConnection) new URL(url).openConnection();
final BufferedReader buf = new BufferedReader(new InputStreamReader(conn.getInputStream()));
final StringBuilder page = new StringBuilder();
final String lineEnd = System.getProperty("line.separator");
String line;
try {
while (true) {
line = buf.readLine();
if (line == null) {
break;
}
page.append(line).append(lineEnd);
}
} finally {
buf.close();
}
return page.toString();
} …
Run Code Online (Sandbox Code Playgroud)