Фиксированный размер строки в C # - PullRequest
6 голосов
/ 10 апреля 2011

Короткий вопрос: возможно ли создать строку фиксированного размера в C #?Я знаю, что в VB возможно объявить что-то вроде этого: str AS string * 20

Длинная история: мне нужно прочитать двоичный файл, содержащий 20-байтовое поле, в строку.Я прочитал содержимое файла в объект (класс).Я хочу ограничить строки в объекте в определении класса.

Большое спасибо за вашу заботу.

roi

Ответы [ 4 ]

5 голосов
/ 10 апреля 2011

Вы можете объявить и заполнить массив символов фиксированного размера, а затем передать его конструктору объектов String для создания строки из этого.

var newString = new string(theCharArray);

4 голосов
/ 10 апреля 2011

Вам следует создать свойство типа string, которое проверяет value.Length в установщике и усекает его или выдает исключение.

1 голос
/ 10 апреля 2011

Попробуйте использовать атрибут VBFixedString.Это информационный атрибут, который не ограничивает фактическую длину строки.Он используется для связи с вызовами API, которые ожидают строку фиксированной длины в стиле VB6.Смотри http://msdn.microsoft.com/en-us/library/x14b6s77.aspx

1 голос
/ 10 апреля 2011

Вы должны использовать 'StringBuilder' для вашей проблемы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...