2014-11-18 2 views
0

사용자가 일부 정보를 기반으로 vCard 파일을 생성 할 수있는 방법을 작성 중입니다. 그것은 아주 잘 작동하며 사용자는 생성 된 파일을 Microsoft Outlook으로 아무 문제없이 열 수 있습니다 (버전 2010 및 2013에서 테스트 됨). 그러나 그가 Windows Contacts를 사용하여 열려고 할 때 UTF-8에 대한 다른 필드에 문자 세트를 설정하는 반면 악센트 부호가있는 문자는 잘 표시되지 않습니다.vCard의 악센트 부호가있는 문자가 Windows 연락처에 표시되지 않음

vCard in Windows Contacts

그것은 Windows 연락처에서 버그가 수 없습니다 : 여기

BEGIN:VCARD 
VERSION:4.0 
FN;CHARSET=utf-8:Vandenbergh Cédric 
N;CHARSET=utf-8:Vandenbergh;Cédric;;; 
TITLE;CHARSET=utf-8:Manager d'entité 
END:VCARD 

그리고 Windows 연락처로를 열 때 내가 무엇을 얻을 : 여기

는 생성 된 vCard를의 예입니다 (Windows 8.1에서 테스트)? 또는 나는 무엇인가 놓치고 있냐? 아니, 난 여전히이

Context.Response.Clear(); 
Context.Response.Buffer = true; 
Context.Response.ContentType = "text/x-vCard; charset=utf-8"; 
Context.Response.AddHeader("Content-Disposition", "attachment;filename=file.vcf"); 
Context.Response.Write(user.GetVCard()); // Get vCard content 
Context.Response.Flush(); 
Context.Response.End(); 

편집 2015 년 2 월 10 일과 2015 년

: 여기에 편집

내가 vCard를 다운로드하는 사용자에 대해 사용하는 코드입니다 이 문제를 해결하는 방법에 대한 아이디어. 내 의견으로는, 그것은 정말로 Windows 연락처 버그 일 수 있지만 내 인상을 확인하기 위해 웹에서 아무것도 찾을 수 없습니다.

답변

0

"CHARSET = utf-8"매개 변수를 추가한다고해서 값이 UTF-8로 쓰여지는 것은 아닙니다. vCard를 쓸 때 문자 인코딩을 "UTF-8"로 설정하지 않은 것 같습니다.

또한 vCard 버전 4.0은 "CHARSET"매개 변수를 지원하지 않습니다. 사양에 따르면 모든 vCard는 UTF-8로 작성되어야합니다 (MUST).

+0

답장을 보내 주셔서 감사합니다. vCard 파일을 다운로드하기 위해 사용자가 사용하는 코드를 추가하여 질문을 편집했습니다. 보시다시피 "ContentType"속성에서 문자 인코딩을 설정했지만 성공하지는 못했습니다. 또한 버전 2.1의 vCard Windows Contacts를 확실히 사용하려고했지만 확실히 성공했지만 여기에서도 지원됩니다. 나는 [그 링크에서] (http://answers.microsoft.com/en-us/windows/forum/windows8_1-ecoms/utf-8-vcard-is-unsupported-by-windows-contacts-and/2ce5f5b1)를 보았다. -4be4-4ce4-8063-9518323eb32b) 누군가가 똑같은 문제가있는 것 같지만 대답이 없습니다. – Opec

+0

@Opec'Context.Response' 객체에 문자 인코딩을 설정하는 방법이 있습니까? 뭔가 :'Context.Response.Encoding = "UTF-8"'. ContentType에 인코딩을 포함하면 충분하지 않을 수 있습니다. 즉, Windows에서 ** UTF-8이 아닌 vCard를 시스템의 기본 문자 인코딩으로 쓸 수 있습니다. – Michael

+0

예, 다음 코드 줄을 추가하면 가능합니다 : 'Context.Response.ContentEncoding = Encoding.UTF8'. 불행히도, 아무것도 바뀌지 않습니다. Windows 연락처 버그라는 인상을 받았습니다. 나는 현재 문자가 잘 보이도록 할 수있는 다른 것을 본다. – Opec

관련 문제