Как добавить атрибут к узлу XML в Java 1.4

Если вы загрузили данные в фрейм данных с помощью Pandas, вы можете использовать df.dropna(), где df = pd.DataFrame(<your_data_here>)

Также вы можете передавать параметры, как показано ниже:

df.dropna(how='any')    #to drop if any value in the row has a nan
df.dropna(how='all')    #to drop if all values in the row are nan
7
задан joe 30 September 2008 в 19:57
поделиться

4 ответа

Я использовал другой файл даты на сервере. Это вызывало проблему.

1
ответ дан 7 December 2019 в 20:38
поделиться

Первый ребенок мог бы быть пробелом только текстовый узел или тому подобный?

Попытка:

System.out.println(doc.getFirstChild().getClass().getName());

Править:

Просто искавший это в моем собственном коде, Вам нужно:

doc.getDocumentElement().getChildNodes();

Или:

NodeList nodes = doc.getElementsByTagName("MyTag");
0
ответ дан 7 December 2019 в 20:38
поделиться

Я думаю, что Ваш бросок вывода doc.getFirstChild () состоит в том, где Вы получаете свое исключение - Вы получаете некоторый Объект узла неэлемента. Номер строки на отслеживании стека указывают на ту строку? Вы, возможно, должны были бы сделать doc.getChildNodes () и выполнить итерации для нахождения первого ребенка Элемента (корень документа), пропустив Узлы неэлемента.

Ваш e.setAttribute () вызов выглядит разумным. Принятием e является Элемент, и Вы на самом деле добираетесь до той строки...

0
ответ дан 7 December 2019 в 20:38
поделиться

Как уже отмечено, ClassCastException вероятно, не добавляется setAttribute. Проверьте номер строки в стек. Мое предположение - это getFirstChild() возвращает a DocumentType, не Element.

Попробуйте это:

DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();

DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse(f);

Element e = (Element) doc.getDocumentElement().getFirstChild();
e.setAttribute("objectId", "OBJ123");

Обновление:

Кажется, что Вы сбиваете с толку Node и Element. Element реализация Node, но конечно не единственный. Так, не все Nodecastable к Element. Если бросок работает над одной машиной а не над другим, это - потому что Вы возвращаете что-то еще от getMapNode() потому что синтаксические анализаторы ведут себя по-другому. Синтаксический анализатор XML является сменным в Java 1.4, таким образом, Вы могли получать совершенно другую реализацию, от другого поставщика, с различными ошибками даже.

Так как Вы не отправляете getMapNode() мы не видим то, что это делает, но необходимо быть явными, о каком узле Вы хотите, чтобы это возвратилось (использование getElementsByTagName или иначе).

0
ответ дан 7 December 2019 в 20:38
поделиться
Другие вопросы по тегам:

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