Вопрос : 10 линий C# к наблюдать перевода VB.NET

Hi, потребность

I специалисту наблюдать перевод немного линий Кодего, от C# к пользе VB.NET 2008 и мне VB.NET
I был StringToHex и HexToString которые поддерживают характеры Unicode, в VB.NET. Я нашел образец тех 2 функций в C#, и приспособил это Кодего для работ Кодего VB.NET.

The VB.NET почти идентичных, единственная разница то в варианте VB.NET появляюсь один больше характера, в конце результата. Этот характер является следующим: Характер «ХАРАКТЕР Unicode ЗАМЕНЫ» (U+FFFD).

Although, я делал Кодего для того чтобы исключить этот характер, я хотел был бы иметь чистые функции StringToHex и HexToString в VB.NET.

So, я заинтересован суметь где точно я делал неточное приспособление Кодего C# к Кодему VB.NET, и как зафиксировать Кодего, потому что иметь чистые функции без после того как я ошиблен Кодему Unicode, котор character.

The C# я нашел находится на этой странице: rel= " nofollow "» _blank»» target= " http://www.eggheadcafe.com/sample-code/csharp.NET/5c5e050f-7509-4ed5-aa58-6fd01ff2b3c6/c-net.aspx href=
приспособление /sample-code/csharp.NET/5c5e050f-7509-4ed5-aa58-6fd01ff2b3c6/c-net.aspx

The VB.NET http://www.eggheadcafe.com Кодего C# это:
----------------------------------------------------------------------------------------------------------функция делят публикой, котор ConvertStringToHex -
(ByVal input как зашифрование шнура, ByVal как System.Text.Encoding) как String
затемняет stringBytes () как байт = sbBytes
encoding.GetBytes (входного сигнала) тусклые как StringBuilder = новое StringBuilder (stringBytes.Length * 2)

тусклый b как Byte
для каждого b в stringBytes
sbBytes.AppendFormat (» {0: X2} «, публика Function

конца

Next

возвращенная sbBytes.ToString b) () делило функцию ConvertHexToString (hexInput ByVal как зашифрование шнура, ByVal как System.Text.Encoding) как String
затемняет numberChars как интежер = байты hexInput.Length
тусклые () как байт = новый байт (numberChars/2) {}
тусклое I как Integer
для I = 0 к numberChars - 1 байты шага 2
(I/2) = Convert.ToByte (
Next

hexInput.Substring (I, 2), 16) затемняют

ReturnValue = encoding.GetString (байт) если (AscW, то (ReturnValue.Substring(ReturnValue. Length - 1, 1)) = 65533) Then
ReturnValue = ReturnValue.Substring (0, ReturnValue.Length - конец Function
If

возвращенный ReturnValue
конца 1)
----------------------------------------------------------------------------------------------------------документация -

The для этого нежелательного характера Unicode находится на этой странице: rel= " nofollow "» _blank»» target= " http://www.fileformat.info/info/unicode/char/fffd/index.htm href=
/info/unicode/char/fffd/index.htm


Thank http://www.fileformat.info вы очень много заранее.
class=

Ответ : 10 линий C# к наблюдать перевода VB.NET

Не будет *really* экстренный характер. В ConvertHexToString, когда вы создали блок «байты», вы сказали что upper-most индексом блока должен быть «numberChars/2», который в это испытание приходит вне до 14. Заметьте что это, по мере того как я сказал, upper-most индекс, НЕ номер шлицев в блоке. Это намеревается что звонок к encoding.GetString () пытается преобразовать uninitialized шлиц блока в характер. Вам нужно уменьшить число шлицев в блоке путем заменять ть линию 31 вашего последнего столба с:
1:
Тусклые байты () как байт = новый байт ((numberChars/2) до 1) {}
Другие решения  
  •  Как я добавляю кнопки на форме PDF для того чтобы добавить/извлекаю рядки данных?
  •  Шнур ошибки в блоке задвижки?
  •  сколько вариант сервера SQL на одной машине
  •  Внешний вид 2007 не может архивный файл открытой сети сохраненный
  •  Активно директория DNS записывает вопрос
  •  Отчет о доступа 2010 экспорта к CSV с коллекторами?
  •  Прокладчик OCE 9400 не начинает
  •  как добавить десятичное место в формуле в отчете о кристалла seagate
  •  Windows XP и Мичрософт Оутлоок и проблемы установителя Windows
  •  VB6 к VS2010 - консультации тренировки?
  •  
    programming4us programming4us