AJUDA COM CARACTERER ESPECIAL
Quando digito ALT + 133 no teclado aparece => Ã
Quando no VB6 faço o => Chr(133) aparece => ...
Quando no VB6 faço => Asc(...) me aparece => 133
Quando ou no C# faço => Asc => Convert.ToInt32(Convert.ToChar([Ô]...[Ô])) aparece => 8230
e quando vou no C# e faço o Char(133) não aparece nada mas se faço o Char(8230) aparece => ...
O lance é que tenho um programa de criptografia no vb6 q usa o Chr e o Asc e agora fui modernizar para o C# só que na conversão do Chr e Asc ñ bate as conversões. Já tive procurando na net... nas tabelas de conversões mas ñ achei muita coisa.
Se alguém souber de algo e puder explicar ou propor um método novo de criptografia eu agradeço.
Quando no VB6 faço o => Chr(133) aparece => ...
Quando no VB6 faço => Asc(...) me aparece => 133
Quando ou no C# faço => Asc => Convert.ToInt32(Convert.ToChar([Ô]...[Ô])) aparece => 8230
e quando vou no C# e faço o Char(133) não aparece nada mas se faço o Char(8230) aparece => ...
O lance é que tenho um programa de criptografia no vb6 q usa o Chr e o Asc e agora fui modernizar para o C# só que na conversão do Chr e Asc ñ bate as conversões. Já tive procurando na net... nas tabelas de conversões mas ñ achei muita coisa.
Se alguém souber de algo e puder explicar ou propor um método novo de criptografia eu agradeço.
Qual cultura está utilizando?
Então KERPLUNK, a cultura não sei te dizer, só sei que quando faço estes comandos no vb6 aparece uma coisa e no C# aparece outro.
veja
MsgBox Asc([Ô]à [Ô])
MsgBox Asc([Ô]à [Ô])
.net trabalha com unicode 32 (vide F12 em cima das funções e leia o sumario)
tudo vai depender de como foi escrito antes, neste caso vb 6, usará o default do sistema, que geralmente é ANSI (1252)
veja os exemplos escritos no console.
string s0 = Encoding.ASCII.GetString(new byte[] { 133 });
string s1 = Encoding.BigEndianUnicode.GetString(new byte[] { 133 });
string s2 = Encoding.Unicode.GetString(new byte[] { 133 });
string s3 = Encoding.UTF32.GetString(new byte[] { 133 });
string s4 = Encoding.UTF7.GetString(new byte[] { 133 });
string s5 = Encoding.UTF8.GetString(new byte[] { 133 });
string s6 = Encoding.Default.GetString(new byte[] { 133 });
//Default = ANSI = 1252
string s7 = Encoding.GetEncoding(1252).GetString(new byte[] { 133 });
Console.WriteLine(s0);
Console.WriteLine(s1);
Console.WriteLine(s2);
Console.WriteLine(s3);
Console.WriteLine(s4);
Console.WriteLine(s5);
Console.WriteLine(s6);
Console.WriteLine(s7);
tudo vai depender de como foi escrito antes, neste caso vb 6, usará o default do sistema, que geralmente é ANSI (1252)
veja os exemplos escritos no console.
string s0 = Encoding.ASCII.GetString(new byte[] { 133 });
string s1 = Encoding.BigEndianUnicode.GetString(new byte[] { 133 });
string s2 = Encoding.Unicode.GetString(new byte[] { 133 });
string s3 = Encoding.UTF32.GetString(new byte[] { 133 });
string s4 = Encoding.UTF7.GetString(new byte[] { 133 });
string s5 = Encoding.UTF8.GetString(new byte[] { 133 });
string s6 = Encoding.Default.GetString(new byte[] { 133 });
//Default = ANSI = 1252
string s7 = Encoding.GetEncoding(1252).GetString(new byte[] { 133 });
Console.WriteLine(s0);
Console.WriteLine(s1);
Console.WriteLine(s2);
Console.WriteLine(s3);
Console.WriteLine(s4);
Console.WriteLine(s5);
Console.WriteLine(s6);
Console.WriteLine(s7);
LVFIOROT, era oq precisava o s6 e s7 resolveu mais uma dúvida ao eu converter o ... p/ 133 > Convert.ToInt32(Convert.ToChar([Ô]...[Ô])) < aparece o codigo [Ô]8230[Ô] saberia me dizer qual meio uso para converter esse > ... < para chegar no numero 133 ??
RIQUINHORICO07, você entendeu do que se trata o que o LVFIOROT passou de exemplo?
Citação::
RIQUINHORICO07, você entendeu do que se trata o que o LVFIOROT passou de exemplo?
Pelo jeito não...
Citação::
LVFIOROT, era oq precisava o s6 e s7 resolveu mais uma dúvida ao eu converter o ... p/ 133 > Convert.ToInt32(Convert.ToChar([Ô]...[Ô])) < aparece o codigo [Ô]8230[Ô] saberia me dizer qual meio uso para converter esse > ... < para chegar no numero 133 ??
escrever o arquivo:
File.WriteAllLines([Ô]c: emp\exemplo.txt[Ô], [Ô]uhuuuu[Ô], Encoding.GetEncoding(1252));
Ler o arquivo:
var rf = File.ReadAllLines([Ô]c: emp\exemplo.txt[Ô], Encoding.GetEncoding(1252));
LVFIOROT, eu entendi sim oq vc postou e me resolveu meio problema, na segunda postagem q ñ soube me expressar direito mas mesmo assim agradeço vc e todos q colaboraram. Eu acabei q deixando o código no vb6 mesmo mas futuramente com mais tempo vou terminar de reescrever o codigo em C#. vlw
Tópico encerrado , respostas não são mais permitidas