Obj.C

obj.C:encodingとWebViewへの表示

URLを読み込んでWebViewにどう書き込めばいいのでしょうか?

前提:

① encoding配列
int encodeTable[] = {
NSUTF8StringEncoding,
・・・・
NSProprietaryStringEncoding}; 
② 関連する変数
int inx;
NSMutableString *mcReadBuffer;

処理:

1. NSURLの作成
NSURL *url = [NSURL URLWithString:currentURL];

2. URLの読み込み
1) [xbWebView.mainFrame loadRequest:[NSURLRequest requestWithURL:url]];
➡ encodingの指定ができません。採用できず。
2. mcReadBuffer = [NSString stringWithContentsOfURL:url encoding:encodeTable[inx]             error:&err]copy]  baseURL:url ;
➡「このあとWebViewにどのようにして入れればいいのかなあ?」という答えがわからず、give up。
3. URLの読み込みとencoding。それからWebViewへの書き込み。
➡- (void)loadHTMLString:(NSString *)string baseURL:(NSURL *)URL
➡+ (instancetype)stringWithContentsOfFile:(NSString *)path encoding:(NSStringEncoding)enc error:(NSError **)error
NSError* err = nil;//クリア
 inx = o; //encoding index
 int max=sizeof(encodeTable) / sizeof(encodeTable[0]);
 while (inx < max) 

    [xbWebView.mainFrame loadHTMLString:[[NSString stringWithContentsOfURL:url    encoding:encodeTable[inx]  error:&err]copy] baseURL:url];
if (err == nil)
                break;//encodeがOKのときループから抜ける
else
 {
    inx = inx +1;
    err = nil;
   }  

4. 実際のコード

スクリーンショット 2014-04-15 19.29.12 スクリーンショット 2014-04-15 19.29.48

Categories: Obj.C, 技術