Question : 10 lignes de C# à la surveillance de traduction de VB.NET

Bonjour, le besoin du

I un expert diriger la traduction de quelques lignes de code, de C# à l'utilisation VB.NET 2008 et moi de VB.NET
I était nécessaire un StringToHex et un HexToString qui soutiennent des caractères d'Unicode, dans VB.NET. J'ai trouvé l'échantillon de ces deux fonctions dans C#, et ai adapté ce code pour les travaux de code adaptés par/>The de VB.NET.


Although, j'ai fait le code pour éliminer ce caractère, je voudrais avoir des fonctions propres de StringToHex et de HexToString dans VB.NET.

So, je suis intéressé de savoir où exactement j'ai fait l'adaptation imprécise du code de C# au code de VB.NET, et fixer le code, parce que avoir des fonctions propres sans erroné le code d'Unicode character.

The C# que j'ai trouvé est à cette page : le rel= " nofollow " de » _blank » de target= de " http://www.eggheadcafe.com/sample-code/csharp.NET/5c5e050f-7509-4ed5-aa58-6fd01ff2b3c6/c-net.aspx » de href= du
adaptation du /sample-code/csharp.NET/5c5e050f-7509-4ed5-aa58-6fd01ff2b3c6/c-net.aspx

The VB.NET de http://www.eggheadcafe.com du code de C# est ceci :
----------------------------------------------------------------------------------------------------------la fonction partagée par public ConvertStringToHex (ByVal du -
entré comme codage de corde, de ByVal comme System.Text.Encoding) comme String
obscurcissent des stringBytes () comme byte = sbBytes du
d'encoding.GetBytes (entrée) de faibles comme StringBuilder = nouveau StringBuilder (stringBytes.Length * 2)

faible b comme Byte
pour chaque b dans stringBytes
sbBytes.AppendFormat ( » {0 : X2} « , le public de retour de Function

de fin du
du b)
Next

sbBytes.ToString () a partagé la fonction ConvertHexToString (hexInput de ByVal comme codage de corde, de ByVal comme System.Text.Encoding) comme String
obscurcissent des numberChars comme nombre entier = bytes de hexInput.Length
faibles () comme byte = nouveau byte (numberChars/2) {}
faible I comme Integer
pour I = 0 aux numberChars - 1 les bytes de l'étape 2
(I/2) = Convert.ToByte le
Next

(de hexInput.Substring (I, 2), 16) obscurcissent le

de ReturnValue = d'encoding.GetString (bytes) si (AscW (ReturnValue.Substring (ReturnValue. Length - 1, 1)) = 65533) Then
ReturnValue = ReturnValue.Substring (0, ReturnValue.Length - extrémité de retour Function
d'If

ReturnValue
de fin de 1)
----------------------------------------------------------------------------------------------------------la documentation du -

The pour ce caractère peu désiré d'Unicode est à cette page : rel= " nofollow " de » _blank » de target= de " http://www.fileformat.info/info/unicode/char/fffd/index.htm » de href= du
/info/unicode/char/fffd/index.htm


Thank de http://www.fileformat.info vous beaucoup à l'avance.
class= de

Réponse : 10 lignes de C# à la surveillance de traduction de VB.NET

Il n'y a pas *really* par caractère supplémentaire. Dans ConvertHexToString, quand vous avez créé la rangée « bytes », vous avez dit que l'index le plus élevé de la rangée devrait être les « numberChars/2 », qui dans cet essai sort à 14. Noter que c'est, comme j'ai dit, l'index le plus élevé, PAS le nombre des fentes dans la rangée. Ceci signifie que l'appel à encoding.GetString () essaye de convertir une fente uninitialized de rangée en caractère. Vous devez réduire le nombre de fentes dans la rangée en remplaçant la ligne 31 de votre dernier poteau par :
1 :
Faibles bytes () comme byte = nouveau byte ((numberChars/2) - 1) {}
Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us