![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| Alexstudent |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 17.5.2013 Репутация: нет Всего: нет |
Добрый вечер.
В программировании достаточно недавно и столкнулся с таким вопросом, может он конечно элементарный, но вразумительного ответа не могу найти:( в общем вот в чем проблема, имеется List<T> и данные с него необходимо дополнить в имеющийся XML файл (не затирая имеющихся там данных). Вот XML файлик:
в C# пробовал следующие варианты 1.
в данном случае просто перезаписывает:( и в XML файле даже строка <?xml version="1.0" encoding="utf-8" ?> пропадает 2.
вообще ничего не происходит:(( В вышеуказанных вариантах я уже в метод не передавал LIst<T>, а уже на прямую данные пытался записать чтобы быстрее было. Все эти варианты брал с разных форумов, пробовал там еще штуки три, но эфект почти такой или затирает или ничего. Люди подскажите пожалуйста, а то уже башня взрывается:(. И если не сложно подскажите где это можно более подробно почитать:) За ранее спасибо:) |
||||||
|
|||||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 18 Всего: 142 |
В каком смысле перезаписывает? Судя по коду у тебя должен получиться документ с корневым элементом day и в конце, самым последним его ребенком должен быть вставленный тобой day. Если ты ждешь, что корневым элементом будет whether, то его надо сначала загрузить, а в коде этого не видно.
Она не пропадает. Ее там просто нет. В какой части кода ты ее вписал? -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| Alexstudent |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 17.5.2013 Репутация: нет Всего: нет |
Перезаписывает в смысле исчезает то, что было в файле и записывается новая информация, та которая по коду:(
во втором же варианте вроде так и написано или я не так что то понимаю? спасибо что откликнулись, правда уже мозг взрывается..уже и мысля замылилась, еле думает:( |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 18 Всего: 142 |
Второй вроде правильно написан, только не видно, где ты сохраняешь документ. Выкладываю пример, изучи его, там все работает как тебе надо. Присоединённый файл ( Кол-во скачиваний: 4 )
AddXmlElement1.rar 46,98 Kb-------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| Alexstudent |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 17.5.2013 Репутация: нет Всего: нет |
Спасибо огромное. Уже вот сижу изучаю:)правда возникло несколько вопросов:
1.
не подскажите что это за такой метод и в какой книге можно про него почитать, просто с такой записью впервые встречаюсь:( 2.
в данном случае слово using обязательно? или запись:
будет идентична? 3. Все выводит хорошо, на консоль и правильно, но вопрос почему не меняет сам файл XML:( |
||||||
|
|||||||
| diadiavova |
|
||||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 18 Всего: 142 |
В мсдн почитай о лямба-выражениях. В данном случае просто надо было выполнять несколько раз одни и те же действия, поэтому немного обобщил и вынес добавление элементаив дэй в отдельную функцию. Если непонятно как это работает, то можно сделать в ручную или создать отдельный метод. Без него сё дудет работать так же, а вот зачем оно нужно - читай в мсдн.
Потому что я не сохранял в файл. Убери из моего кода стрингбилдеры, райтеры и вывод на консоль, а методу Save передай имя файла для сохранения и всё изменится, просто вместо файла я сохранил стринграйтер, он записал в стрингбилдер. Можно так же вместо стринграйтера использовать стримрайтер и можно будет записать в том числе и в файл. Но это всё уже вопросы немного из другой сферы. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
||||
|
|||||
| Alexstudent |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 17.5.2013 Репутация: нет Всего: нет |
а и еще по второму моему варианту, с целью сохранения добавляю _doc.Save(fs), вот что то такое:
сохранять то сохраняет но файл приобретает вид:
подскажите пожалуйста, хотелось бы уже окончательно разобраться по данному вопросу:) |
||||
|
|||||
| Alexstudent |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 17.5.2013 Репутация: нет Всего: нет |
Спасибо огромное:) все шикарно работает:) буду насчет лямбда выражений и юзингов читать мат часть:)
|
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 18 Всего: 142 |
Alexstudent, по поводу неправильного сохранения, у тебя ошибка в самом документе, там в конце вместо закрывающего тега - открывающий. Слеш забыл поставить.
-------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | .NET для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |