2014-05-18 5 views
0

중국어 문자가 포함 된 데이터베이스 레코드를 다운로드하기 위해 서블릿을 작성했습니다. 다운로드 파일은 CSV 형식입니다. 서블릿 응답 내용 유형은 "text/csv; charset = utf-8"로 설정됩니다.중국어 문자가 깨져서

Excel에서 CSV를 열면 중국어 문자를 읽을 수 없습니다. 그러나 xcode 편집기를 사용하여 동일한 파일을 열면 잘 보입니다.

두 가지 응용 프로그램에서 char 인코딩에 대한 설정을 찾을 수 없습니다.

Excel과 Xcode 편집기의 차이점은 무엇입니까?

답변

0

Excel의 CSV 파일 처리 제한 일 수 있습니다. 당신은 txt 확장자를 탭으로 구분 된 형식을 시도 할 수 있습니다 :

NSDictionary *dictionary = @{@"(nǐ hǎo) - inf" : @"你好", 
          @"(hǎojǐu bújiàn)" : @"好久不見 [好久不见]"}; 

NSString *documentsPath = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)[0]; 
NSString *path   = [documentsPath stringByAppendingPathComponent:@"test.txt"]; 

NSMutableString *string = [NSMutableString string]; 

for (NSString *key in dictionary) { 
    [string appendString:key]; 
    [string appendString:@"\t"]; 
    [string appendString:dictionary[key]]; 
    [string appendString:@"\n"]; 
} 

NSError *error; 
BOOL success = [string writeToFile:path atomically:YES encoding:NSUTF16StringEncoding error:&error]; 
NSAssert(success, @"error = %@", error); 

나는 Excel에서이 파일을 열 수 있었다. 하지만 이 아니라 NSUTF16StringEncoding을 사용해야했습니다.

관련 문제