AndroidおよびiOSデバイスで実行されるアプリケーションを開発しています。このアプリでは、URLからXMLストリームを取得する必要があります。このXMLは実際には安全ではありません。たとえば、次のような行があるためです。
啓示
となります :
回転
もちろん、最善の方法はXMLジェネレータースクリプトを修正することです。しかし、私は会社の開発者として働いているだけで、それにアクセスすることはできません。そのため、今のところ、私は自分が持っているものでできることをやろうとしています。
これがこのトピックの理由です。このデータをObjective-CのNSDataオブジェクトに入れると:
NSData *data = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:url]];
そして、すべてのバイトを読み取ってみてください:
NSUInteger len = [data length];
Byte *byteData = (Byte*)malloc(len);
memcpy(byteData, [data bytes], len);
for(int i = 0 ; i < len ; i++)
{
NSLog(@"%d",byteData[i]);
}
charのint値、特殊文字かどうかを正しく表示します。それから私はそれ(unichar)byteData[i]
を解決するために処理する必要があります。
いいえ、JavaとAndroidでは、基本的なBufferedReader操作を実行しようとしています。
URL myURL = new URL(url);
BufferedReader in = new BufferedReader(new InputStreamReader(myURL.openStream()));
次に、すべての文字のintを1つずつ出力します。
int i;
while((i = in.read()) != -1) System.out.print(i);
しかし、Javaでは、これを行うことで、適切なIDの代わりに置換charのID(65533)をすぐに取得し、それを置き換えることができなくなります。
何か案が?私を読んでくれてありがとう。