Olá, estou fazendo um algoritmo para exibir a estrutura de um XML com JDOM, porém, nos testes com alguns códigos XML esse foi apresentado: Byte inválido 2 da sequência UTF-8 do byte 3".
Alguém sabe como resolver? Desde já obrigada!
Código:
public static List interage( List<Element> e){
for (int count = 0; count < e.size(); count++) {
Element carElement = e.get(count);
System.out.println(carElement.getName());
System.out.println(carElement.getAttributes());
List<Element> elem = carElement.getChildren();
interage(elem);
}
return null;
}
public static void main(String[] args){
try {
//Aqui você informa o nome do arquivo XML.
File inputFile = new File("teste.txt");
//Criamos uma classe SAXBuilder que vai processar o XML
SAXBuilder sb = new SAXBuilder();
//Este documento agora possui toda a estrutura do arquivo.
Document document = sb.build(inputFile);
System.out.println("Root element :" + document.getRootElement().getName());
System.out.println("Atributs root: "+document.getRootElement().getAttributes());
//Recuperamos o elemento root
Element classElement = document.getRootElement();
//Recuperamos os elementos filhos (children)
List<Element> elements = classElement.getChildren();
System.out.println("----------------------------");
interage(elements);
} catch(JDOMException e) {
e.printStackTrace();
} catch(IOException ioe) {
ioe.printStackTrace();
}
}
Exemplo de xml que dá erro:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:id="@+id/textView70"
android:layout_width="match_parent"
android:layout_height="87dp"
android:gravity="center"
android:text="No MeuProjeto você, Aluno, pode solicitar"
android:textColor="#184B6C"
android:textSize="17sp"
android:textStyle="bold" />
<TextView
android:id="@+id/textView71"
android:layout_width="match_parent"
android:layout_height="87dp"
android:gravity="center"
android:text="Como fazer isso?! É muito fácil!"
android:textColor="#184B6C"
android:textSize="17sp"
android:textStyle="bold" />
<TextView
android:id="@+id/textView72"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="clip_horizontal"
android:layout_marginTop="5dp"
android:text="1: Na tela inicial estão todos"
android:textSize="17sp"
android:textColor="#184B6C"/>
<TextView
android:id="@+id/textView73"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="clip_horizontal"
android:layout_marginTop="5dp"
android:text="2: Para ver os projetos cadastrados "
android:textSize="17sp"
android:textColor="#184B6C"/>
<TextView
android:id="@+id/textView74"
android:layout_width="match_parent"
android:layout_height="87dp"
android:gravity="center"
android:text="Solicitando a participação em um projeto"
android:textColor="#184B6C"
android:textSize="17sp"
android:textStyle="bold" />
<TextView
android:id="@+id/textView75"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="clip_horizontal"
android:layout_marginTop="5dp"
android:text="1: Ao clicar em um projeto "
android:textSize="17sp"
android:textColor="#184B6C"/>
<TextView
android:id="@+id/textView77"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="clip_horizontal"
android:layout_marginTop="5dp"
android:text="2: Quando o projeto estiver com o status."
android:textSize="17sp"
android:textColor="#184B6C"/>
<TextView
android:id="@+id/textView76"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="clip_horizontal"
android:layout_marginTop="5dp"
android:text="3: Se for do seu desejo se candidatar basta clicar em CANDIDATAR-SE"
android:textSize="17sp"
android:textColor="#184B6C"/>
<TextView
android:id="@+id/textView78"
android:layout_width="match_parent"
android:layout_height="87dp"
android:gravity="center"
android:text="Resultados"
android:textColor="#184B6C"
android:textSize="17sp"
android:textStyle="bold" />
<TextView
android:id="@+id/textView79"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="clip_horizontal"
android:layout_marginTop="5dp"
android:text="1: Em SOLICITAÇÕES todos os projetos que você solicitou a participação serão listados"
android:textSize="17sp"
android:textColor="#184B6C"/>
<TextView
android:id="@+id/textView81"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="clip_horizontal"
android:layout_marginTop="5dp"
android:text="2: O resultado estará logo abaixo do nome do projeto"
android:textSize="17sp"
android:textColor="#184B6C"/>
<TextView
android:id="@+id/textView82"
android:layout_width="match_parent"
android:layout_height="87dp"
android:gravity="center"
android:text="Status"
android:textColor="#184B6C"
android:textSize="17sp"
android:textStyle="bold" />
<TextView
android:id="@+id/textView80"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="clip_horizontal"
android:layout_marginTop="5dp"
android:text="1: O status de uma solicitação será SOLICITADO quando o professor ainda não analisou"
android:textSize="17sp"
android:textColor="#184B6C"/>
<TextView
android:id="@+id/textView83"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="clip_horizontal"
android:layout_marginTop="5dp"
android:text="2: REQUERIDO se você foi aceito no projeto"
android:textSize="17sp"
android:textColor="#184B6C"/>
<TextView
android:id="@+id/textView84"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="clip_horizontal"
android:layout_marginTop="5dp"
android:text="3: INDEFERIDO se você não passou :("
android:textSize="17sp"
android:textColor="#184B6C"/>
<TextView
android:id="@+id/textView58"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:gravity="center"
android:text="Isso é tudo!"
android:textSize="17sp"
android:textStyle="bold"
android:textColor="#184B6C"/>
<ImageView
android:id="@+id/imageView2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:srcCompat="@mipmap/ic_launcher_aund" />
<TextView
android:id="@+id/textView62"
android:layout_width="match_parent"
android:layout_height="87dp"
android:gravity="center"
android:text="Esse aplicativo foi feito "
android:textColor="#184B6C"
android:textSize="12sp"
android:textStyle="bold" />
</LinearLayout>
Código XML que funciona
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=“com.example.meuprojeto.Activity.MainActivity”>
<!--//TELA DE LOGIN-->
<ScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
tools:layout_editor_absoluteX="0dp"
tools:layout_editor_absoluteY="6dp"
tools:ignore="MissingConstraints">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="vertical"
tools:ignore="MissingConstraints"
tools:layout_editor_absoluteX="0dp"
tools:layout_editor_absoluteY="0dp">
<ImageView
android:layout_width="95dp"
android:layout_height="143dp"
android:layout_gravity="center"
android:contentDescription="@string/todo"
android:src="@drawable/lamp" />
<TextView
android:id="@+id/acesse"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="10dp"
android:text="@string/acesse_j_sua_conta"
android:textColor="#184B6C"
android:textSize="20sp"
android:textStyle="bold" />
<EditText
android:id="@+id/login"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="30dp"
android:ems="13"
android:hint="@string/email_log"
android:inputType="textEmailAddress"
tools:layout_editor_absoluteX="109dp"
tools:layout_editor_absoluteY="239dp" />
<EditText
android:id="@+id/senha"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:ems="13"
android:hint="@string/senhas"
android:inputType="textPassword"
tools:layout_editor_absoluteX="0dp"
tools:layout_editor_absoluteY="239dp" />
<Button
android:id="@+id/button"
style="@style/Button_style"
android:layout_width="207dp"
android:layout_height="40dp"
android:layout_marginTop="5dp"
android:text="@string/login" />
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="35dp"
android:text="@string/ainda_n_o_cadastrado"
tools:layout_editor_absoluteX="185dp"
tools:layout_editor_absoluteY="372dp" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="startActivity"
android:text="@string/cadastre_se"
tools:layout_editor_absoluteX="163dp"
tools:layout_editor_absoluteY="368dp" />
</LinearLayout>
</ScrollView>
</android.support.constraint.ConstraintLayout>