Эквивалентный из __ ДАТА __, __ ВРЕМЯ __ макросы в C#

В UTF-32 все символы кодируются с 32 битами. Преимущество состоит в том, что можно легко вычислить длину строки. Недостаток - то, что для каждого ASCII символы Вы тратите впустую дополнительные три байта.

символы In UTF-8 имеют переменную длину, символы ASCII кодируются в одном байте (восемь битов), большинство западных специальных символов кодируется или в двух байтах или в трех байтах (например, в‚ ¬ составляет три байта), и более экзотические символы могут взять до четырех байтов. Ясный недостаток, это априорно Вы не можете вычислить длину строки. Но это - партия взятий меньше байтов для кодирования латинского (английского) текста алфавита, по сравнению с UTF-32.

UTF-16 является также переменной длиной. Символы кодируются или в двух байтах или в четырех байтах. Я действительно не вижу точку. Это имеет недостаток того, чтобы быть переменной длиной, но не имеет преимущества сохранения такого же количества пространства как UTF-8.

Из тех трех, ясно UTF-8 наиболее широко распространение.

14
задан Soo Wei Tan 20 August 2009 в 23:20
поделиться

4 ответа

Я рекомендую настроить сценарий сборки так, чтобы он записывал дату и время в файл. В проекте MSBuild Community Tasks есть задача времени, которую можно использовать именно для этого.

4
ответ дан 1 December 2019 в 15:22
поделиться

Вы можете посмотреть настройку файла .csproj проектов. Это обычный файл msbuild, и вы можете подключиться к цели BeforeBuild для создания или обновления файла, возможно, сохраняя это значение в настраиваемом атрибуте уровня сборки.

Я полагаю, что здесь будут полезны задачи сообщества msbuild, поскольку они есть несколько полезных задач, например, для замены токена в файле.

1
ответ дан 1 December 2019 в 15:22
поделиться

Если вы пытаетесь автоматически сгенерировать номера сборки и версии, я бы посмотрел на следующий проект на CodePlex:

http://autobuildversion.codeplex.com/[1213 impression

2
ответ дан 1 December 2019 в 15:22
поделиться

Уродливый и требует определенных разрешений, но если это для внутреннего использования:

            // assume the relevant using statements above...
            FileVersionInfo vi = FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location);
            FileInfo fileInfo = new System.IO.FileInfo(vi.FileName);
            DateTime createTime = fileInfo.CreationTime;
0
ответ дан 1 December 2019 в 15:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: