Convertendo Unicode para Windows-1252 para vCards

Estou tentando escrever um programa emC # que dividirá um arquivo vCard (VCF) com vários contatos em arquivos individuais para cada contato. Entendo que o vCard precisa ser salvo como ANSI (1252) para que a maioria dos celulares os leia.

No entanto, se eu abrir um arquivo VCF usandoStreamReader e depois escreva de volta comStreamWriter (definindo 1252 como o formato de codificação), todos os caracteres especiais, comoå, æ eø estão sendo escritos como?. Certamente o ANSI (1252) suportaria esses caracteres. Como faço para corrigir isso?

Editar: Aqui está o código que eu uso para ler e escrever o arquivo.

private void ReadFile()
{
   StreamReader sreader = new StreamReader(sourceVCFFile);
   string fullFileContents = sreader.ReadToEnd();
}

private void WriteFile()
{
   StreamWriter swriter = new StreamWriter(sourceVCFFile, false, Encoding.GetEncoding(1252));
   swriter.Write(fullFileContents);
}

questionAnswers(1)

yourAnswerToTheQuestion