Тип кодирования как переменная - PullRequest
0 голосов
/ 24 марта 2011
if (radioButton1.Checked) {
    var Enc = Encoding.Unicode;
}

var text = File.ReadAllText(filePath, (Enc);

Это не работает, в любом случае сделать тип кодировки var, чтобы я мог позже p

Ответы [ 2 ]

7 голосов
/ 24 марта 2011

Проблема не в использовании var - это то, что вы объявили переменную внутри блока, а затем пытаетесь использовать ее вне блока.

Вот альтернатива:

var encoding = Encoding.UTF8; // Default to UTF-8

if (useUtf16RadioButton.Checked)
{
    encoding = Encoding.Unicode;
}
var text = File.ReadAllText(filePath, encoding);
0 голосов
/ 24 марта 2011

Проблема в том, что вы должны присвоить значение при объявлении переменной с помощью var, чтобы можно было вывести тип (вы также указали Enc только в рамках условия if, чтобы впоследствии его нельзя было использовать):

var Enc = Encoding.UTF8; //default
if (radioButton1.Checked) {
    Enc = Encoding.Unicode;
}

var text = File.ReadAllText(filePath, Enc);
...