Как я сериализирую объекты DateTime в.NET в стандарты совместимый путь

Ваш вопрос не на 100% ясен, поэтому я кратко изложу свое понимание ситуации, прежде чем ответить:

У вас есть buffer_of_strings, который содержит N строк по length_of_string байтов. Это означает, что каждая строка начинается со смещения i * length_of_string в буфере:

      +--------length_of_string--------+
      |          |          |          |
 <----+----><----+----><----+----><----+---->
"String0    String1    Str2       String3    "
 ^          ^                     ^
 |          |                     |
 0     (1 * length_of_string)     (3 * length_of_string)

Так что это приводит меня к чему-то вроде этого с простой старомодной арифметикой указателей:

__kernel void myKernel(global char *buffer_of_strings, char length_of_string, global char *output_buffer) {
     uint offset = get_global_id(0) * length_of_string;
     global char *string_input = buffer_of_strings + offset;
     Function(string_input, length_of_string, output_buffer);
}

Убедитесь, что все ваши указатели помечены соответствующей областью памяти. (global в этом случае)

7
задан Waylon Flinn 15 April 2009 в 16:08
поделиться

4 ответа

К счастью, есть XmlConvert.ToString () и XmlConvert.ToDateTime () , который обрабатывает этот формат:

string s = XmlConvert.ToString(DateTime.Now,
     XmlDateTimeSerializationMode.Local);
DateTime dt = XmlConvert.ToDateTime(s,
     XmlDateTimeSerializationMode.Local);

(выберите ваш соответствующий режим сериализации)

15
ответ дан 6 December 2019 в 07:52
поделиться

dateobj.ToString ("s") даст вам строковое представление, соответствующее ISO 8601, которое затем может быть десериализовано с DateTime.Parse ()

4
ответ дан 6 December 2019 в 07:52
поделиться

Попробуйте:

System.Xml.XmlConvert.ToString(TimeStamp, System.Xml.XmlDateTimeSerializationMode.Utc))
1
ответ дан 6 December 2019 в 07:52
поделиться

Нам часто приходится убеждать пользователей, не являющихся техническими специалистами, в том, что IE6 - очень плохая идея для любой компании, которая все еще работает, и поэтому у нас есть документ, над которым мы работаем, чтобы обучить своих сотрудников и Корпоративные пользователи приводят резюме, если оно помогает:

Почему IE 6 представляет собой проблему?

Гораздо менее безопасен, чем другие браузеры

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

Хорошо известно, что IE6 менее безопасен, чем современные браузеры, когда серфинг в интернете:

«... самая веская причина для обновления - это повышенная безопасность. Интернет сегодня - это не Интернет пятилетней давности. Сэнди Хардмайер, Microsoft MVP

«Старые браузеры - это швейцарские дыры в безопасности, которые позволяют черным шляпам захватывать компьютеры, создавать бот-сети и даже красть личность жертвы, большую часть времени без их ведома. «. www.joelevi.com

IE 6 представляет угрозу безопасности для любого компьютера, на котором он используется для просмотра веб-страниц. Любая ответственная ИТ-команда обновится до IE7 или более поздней версии на всех компьютерах в корпоративной сети. Многие теперь устанавливают браузер Firefox для дальнейшего повышения безопасности.

Он не соответствует стандартам

IE 6 не отображает веб-страницы так же, как большинство браузеров, так как использует собственный механизм, который игнорирует многие из стандарты, установленные W3C (Консорциум World Wide Web). Это приводит к тому, что некоторые веб-страницы отображаются некорректно в IE 6, а некоторые вообще не отображаются.

Это также означает, что в то время как веб-разработчикам приходится поддерживать IE 6, большая часть их работы занимает исправление страниц, а не разработка лучшего контента. и особенности. Короче говоря, IE 6 сдерживает развитие Интернета для всех пользователей.

Медленнее

За последние 8 лет разработки браузеров, а также улучшения безопасности браузеры были настроены для повышения производительности на всех фронтах, включая скорость загрузки, скорость рендеринга и производительность JavaScript / AJAX, которая является технологией, используемой на большинстве крупных сайтов. для лучшего взаимодействия с конечным пользователем (иногда его называют технологией Web 2.0).

Использование памяти

Internet Explorer 7 фактически использует меньше памяти, чем IE6, и использует меньше общих ресурсов на машине. Таким образом, обновление может улучшить производительность старых компьютеров.

Обновление до Firefox или Chrome

Firefox

http://en-us.www.mozilla.com/en-US/firefox/firefox.html

Chrome

http://www.google.co.uk/chrome

Обновление до IE 7/8

Домашние пользователи

Internet Explorer 7 http://www.microsoft.com /downloads/details.aspx?displaylang=en& За последние несколько лет NET немного улучшилась в этом отношении. Кажется, что объект System.Xml.XmlConvert предназначен для удовлетворения целого класса потребностей, возникающих в этом контексте. Следующие функции, по-видимому, предназначены специально для гибкого и совместимого со стандартами преобразования объектов DateTime.

XmlConvert.ToDateTime(string, System.Xml.XmlDateTimeSerializationMode)


XmlConvert.ToString(DateTime, System.Xml.XmlDateTimeSerializationMode)

Следующий элемент перечисления кажется особенно полезным в том случае, если вы хотите сохранить исходную информацию о часовом поясе:

System.Xml.XmlDateTimeSerializationMode.RoundtripKind

Здесь ссылки на документацию для функций в MSDN:

XmlConvert.ToDateTime (string, System.Xml.XmlDateTimeSerializationMode)

XmlConvert.ToString (DateTime, System.Xml.XmlDateTimeSerializationMode)

3
ответ дан 6 December 2019 в 07:52
поделиться
Другие вопросы по тегам:

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