내 앱에 HTML 페이지를 저장해야하며 "€"와 같은 문자가 발견되면 저장된 파일에 잘못 표시됩니다. 여러 인코딩을 시도했지만 아무도이 문제를 해결하지 못했습니다. 해결책이 있습니까? HTML 이름의 문자를 바꾸려고 시도했지만 여전히 작동하지 않습니다. YES
에 flag
세트 아래Xcode로 이상한 HTML 문자를 인코딩하는 방법은 무엇입니까?
- (NSStringEncoding)smallestEncoding
- (NSStringEncoding)fastestEncoding
또는 사용 방법 :
NSString *HTML = [web stringByEvaluatingJavaScriptFromString:@"document.getElementsByTagName('html')[0].innerHTML;"];
NSArray *path = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *filePath = [NSString stringWithFormat:@"%@/%@", [path objectAtIndex:0],@"code.html"];
int enc_arr[] = {
NSISOLatin1StringEncoding, // ESP
NSUTF8StringEncoding, // UTF-8
NSShiftJISStringEncoding, // Shift_JIS
NSJapaneseEUCStringEncoding, // EUC-JP
NSISO2022JPStringEncoding, // JIS
NSASCIIStringEncoding // ASCII
};
NSData *urlData= nil;
for (int i=0; i<6; i++) {
urlData = [HTML dataUsingEncoding:enc_arr[i]];
if (urlData!=nil) {
break;
}
}
[urlData writeToFile:filePath atomically:YES];
을하지만, CSS를 잃고 모두 잃어 내용. 다른 문자는 "?" 그래서 그것도 작동하지 않습니다 : ( – Sylphos