Conversión de Unicode a Windows-1252 para vCards

Estoy tratando de escribir un programa enC# eso dividirá un archivo vCard (VCF) con múltiples contactos en archivos individuales para cada contacto. Entiendo que la vCard debe guardarse como ANSI (1252) para que la mayoría de los teléfonos móviles puedan leerlos.

Sin embargo, si abro un archivo VCF usandoStreamReader y luego escribir de nuevo conStreamWriter (configurando 1252 como el formato de codificación), todos los caracteres especiales comoå, æ yø se escriben como?. Seguramente ANSI (1252) admitiría estos caracteres. ¿Cómo puedo solucionar esto?

Editar: Aquí está el código que uso para leer y escribir el archivo.

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);
}

Respuestas a la pregunta(1)

Su respuesta a la pregunta