Я пытаюсь преобразовать код String to ASCII
, поэтому я использую эту функцию:
public List<string> PrimaryCode(string OrginalStr)
{
List<string> lstResult = new List<string>();
int lenOrginal = OrginalStr.Length;
string subOrginalStr;
byte[] AsciisubOrginalStr;
int AC;
for (int i = 0; i < lenOrginal; i++)
{
subOrginalStr = OrginalStr.Substring(i, 1);
AsciisubOrginalStr = Encoding.ASCII.GetBytes(subOrginalStr);
if (AsciisubOrginalStr[0] > 100)
{
AC = Convert.ToInt32(AsciisubOrginalStr[0]);
lstResult.Add((AC ).ToString());
}
else
{
AC = Convert.ToInt32(AsciisubOrginalStr[0]);
lstResult.Add((AC).ToString());
}
}
return lstResult;
}
В другой части моего проекта мне нужно преобразовать код ASCII
в исходный текст, как вы можете видеть, я использую эту функцию:
public List<string> PrimaryCodeRev(List<string> CodedStr)
{
string res = "";
foreach (string s in CodedStr)
{
res = res+s;
}
List<string> lstResult = new List<string>();
int lenOrginal = res.Length;
string subOrginalStr;
byte[] AsciisubOrginalStr;
int AC;
for (int i = 0; i < lenOrginal; i++)
{
subOrginalStr = res.Substring(i, 1);
AsciisubOrginalStr = Encoding.ASCII.GetBytes(subOrginalStr);
if (AsciisubOrginalStr[0] < 100)
{
AC = Convert.ToInt32(AsciisubOrginalStr[0]);
lstResult.Add((AC).ToString());
}
else
{
AC = Convert.ToInt32(AsciisubOrginalStr[0]);
lstResult.Add((AC).ToString());
}
}
return lstResult;
}
Строковый ввод hello
преобразовать в ascii результат:
Преобразование ascii в основной текст:
Но это не работает и не возвращает основной текст. Почему ?
if
). Вы обязательно должны подумать о рефакторинге. - person   schedule 22.09.2014Encoding.ASCII.GetBytes()
иEncoding.ASCII.GetString()
преобразуются в ASCII и из него. Для чего предназначен весь этот код в Q? Зачем вам нужен список строк с числовыми кодами символов? Ваши две функции идентичны. Вам нужен только один из них. Зачем две функции, которые делают одинаковые вещи? И если вы преобразуетеstring
вList<string>
, то обратное преобразованиеList<string>
вstring
. Я предлагаю вам попытаться объяснить на высоком уровне, что вы пытаетесь сделать. - person David Heffernan   schedule 22.09.2014