Почему метка порядка байтов не отправляется из UTF8Encoding.GetBytes?

13
задан xyz 8 January 2009 в 02:00
поделиться

4 ответа

Вы не хотели бы, чтобы это использовалось для каждый вызов к GetBytes, иначе у Вас не будет способа (говорят) что запись файла строки за один раз.

Путем представления его с GetPreamble, вызывающие стороны могут вставить преамбулу только в соответствующей точке (т.е. в начале их данных). Я соглашаюсь, что документация могла быть намного более четкой все же.

18
ответ дан Jon Skeet 8 January 2009 в 02:00
поделиться
  • 1
    Целых cloudbees разработки хороши от продукта, я don' t undertand, какова могла быть проблема там. С вовлеченной Oracle была ясно проблема как Oracle где более соответствующая об их прибыли и меньше о дорожной карте продукта. – JAR.JAR.beans 26 November 2012 в 07:47

Спасибо вам обоим. Следующие работы и LINQ делают комбинацию простой :-)

UTF8Encoding enc = new UTF8Encoding(true);
byte[] data = enc.GetBytes("a");
byte[] combo = enc.GetPreamble().Concat(data).ToArray();
8
ответ дан xyz 8 January 2009 в 02:00
поделиться
  • 1
    У меня есть быстрый вопрос, я думаю, что у меня есть эта работа теперь, но когда я отправляю свой сайт Google и даю ссылки на Google, карты сайта, и т.д. сделайте я должен дать Google mysite.com/# ! или всего mysite.com и Google добавит в escaped_fragment, потому что у меня есть он в метатеге? – ccorrin 7 September 2013 в 08:40

Обратите внимание, что в целом, Вам не нужен Порядок байтов Mark для UTF-8 так или иначе. Это - основная цель, должен сказать UTF16 БЫТЬ и UTF16 LE независимо. Нет такой вещи как UTF8 LE и UTF8 БЫТЬ.

2
ответ дан MSalters 8 January 2009 в 02:00
поделиться
  • 1
    спасибо Bjorn & Sandra:-) I' m работающий над лучшей версией этого документа, который будет также включать информацию о том, как к страницам кэша, чтобы сделать процесс быстрее и сделать это в более общем использовании, где URL действительно содержит controller' s имя; I' ll отправляют его как только it' s готовый – beamish 17 September 2013 в 06:31

Поскольку ожидается, что GetBytes() будет назван большим количеством времен... необходимо использовать:

byte[] preamble = enc.GetPreamble();

(только называют его в начале последовательности) и пишут это; это - то, где BOM живет.

3
ответ дан Marc Gravell 8 January 2009 в 02:00
поделиться
  • 1
    коррин - насколько я знаю Вы don' t должен дать Google что-либо; google' s бот найдет Ваш сайт и взгляд в нем для симпатичных URL (don' t забывают в домашней странице добавлять метатег также, поскольку это не может содержать URL). ужасный URL, содержащий escaped_fragment, всегда добавляется только Google - Вы никогда не должны помещать его сами в Ваших HTML. и спасибо за поддержку:-) – beamish 7 September 2013 в 09:21
Другие вопросы по тегам:

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