IE6? Meh. У Вас парни есть он легкий ! Вы никогда не должны были делать разметку CSS в Netscape 4 (не разрушая весь браузер)? Вы никогда не должны были писать для браузеров устройства, которые не поддерживают таблицы? Вы никогда не должны были писать для [1 117] IE Мобильный телефон ?
нет никакой поддержки присвоенных JavaScript обработчиков событий; можно только записать обработчик событий посредством установки “onclick = "somestring" ” в innerHTML;
самые основные свойства DOM Level 1 (например, nodeName, тип узла, nodeValue, firstChild, lastChild, nextSibling, previousSibling, данные, значение, HTMLElement.getElementsByTagName, все члены HTMLTableElement, большинство членов CSSStyleDeclaration) просто не существуют;
большинство свойств макета CSS не работает; многие просто свойства CSS как вЂwidth’ не работают над некоторыми элементами, такими как поля формы;
установка многих других свойств CSS на элементах как таблицы и полевые причины формы мгновенный браузер зависает, который, так как Windows Mobile не имеет никакого встроенного диспетчера задач, средств, что у Вас есть к мягкой перезагрузке устройство;
, о, и помещение чего-либо кроме текста в < кнопка> является insta-катастрофическим-отказом также;
огромные блоки основных методов JavaScript и Уровня “DOM 0” методы, возвращающиеся до Netscape 2 (!), отсутствуют.
И это - самый актуальный выпуск ведущего браузера Windows Mobile Microsoft в 2009.
Несомненно, это поддерживает XMLHttpRequest, но код Ajax написания на браузере, поддержка CSS и сценария которого является меньше, чем IE3 (!), является причудливо шизофреником, как Вы работаете со странной амальгамой технологий 21-го века и 19-го века.
я не рекомендовал бы это.
Добавление в начало файла (добавление в начало, а не добавление) обычно не поддерживается. Ваш вариант №1 в порядке. Если вы не можете записать временный файл, вы можете вытащить весь файл в память, предварительно добавить свои данные в массив байтов, а затем перезаписать его обратно (это реально возможно только в том случае, если ваши файлы маленькие и вам не нужно иметь кучу памяти сразу, потому что добавить массив без копии тоже не всегда легко).
Вы сможете сделать это, не открывая новый файл. Используйте следующий метод File:
public static FileStream Open(
string path,
FileMode mode,
FileAccess access
)
Обязательно укажите FileAccess.ReadWrite.
Используя FileStream, возвращенный из File.Open, прочтите все существующие данные в память. Затем сбросьте указатель на начало файла, запишите новые данные, затем запишите существующие данные.
(Если файл большой и / или вы подозреваете, что используете слишком много памяти, вы можете сделать это, не имея читать весь файл в память, но реализация этого оставлена читателю в качестве упражнения.)
Я думаю, что лучший способ - создать временный файл. Добавьте свой текст, затем прочтите содержимое исходного файла, добавив его во временный файл. Затем вы можете перезаписать оригинал временным файлом.