Svp j'ai besoin d'une réponse s'il existe: utilisation de streamtokenizer

monoleilaaa Messages postés 7 Date d'inscription lundi 19 avril 2010 Statut Membre Dernière intervention 8 mai 2010 - 4 mai 2010 à 02:35
monoleilaaa Messages postés 7 Date d'inscription lundi 19 avril 2010 Statut Membre Dernière intervention 8 mai 2010 - 5 mai 2010 à 22:59
salut

j'ai un projet en java, tout d'abord je doit lire un fichier contient des document en HTML sont separer par les 2 balise <DOC> et </DOC> je veux lire ses document mot a mot et determiner pour chaque document(identifiant ,titre, longeur (nombre de terme), URL, un tableau de terme se dernier et un autre class appele terme (racine, tf(nombre d'occurence dans le document ),..) je pence dans se cas utiliser la class StreamTokenizer

voici un exmple de début document

<DOC>
<DOCNO>G00-00-0000000</DOCNO>
<DOCHDR>
http://www.aspe.hhs.gov
HTTP/1.0 200 OK
Date: Wed, 30 Jan 2002 17:00:23 GMT
Server: WebSitePro/3.0.37
Accept-ranges: bytes
Content-type: text/html
Last-modified: Fri, 18 Jan 2002 19:04:17 GMT
Content-length: 8228
</DOCHDR>
<!DOCTYPE HTML PUBLIC "-//w3c//dtd html 4.0 transitional//en" "http://www.w3.org/TR/REC-html40/loose.dtd">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META HTTP-EQUIV="Window-target" CONTENT="_top">
<META NAME="keywords"
CONTENT="heath, health care, long term care, disability, aging, evaluation, welfare, income, poverty, poverty guidelines, service delivery, data, research, policy, children, youth, families, abuse, neglect, foster care, child care, child development, family preservation, teen pregnancy, domestic violence, immigrants, immigration, child support, fatherhood, welfare reform, welfare dependency, welfare to work, welfare outcomes,">
<META NAME="descr

...
c.a.d j'ai besoin seulement des mots entre les balise

qui peut m'aider comment je peut utiliser la class Streamtokenizer dans ce cas et merci d'avence

10 réponses

nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
4 mai 2010 à 07:26
Salut,

C'est pas streamtokenizer, c'est les classes XML qu'il faut utiliser, c'est plus simple.

Bon dev
0
monoleilaaa Messages postés 7 Date d'inscription lundi 19 avril 2010 Statut Membre Dernière intervention 8 mai 2010
4 mai 2010 à 12:35
salut
merci pour le réponse mais tu peut m'expliquer mieux comment utiliser les class XML dans ce cas, c'est la 1er fois que je travail avec java
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
4 mai 2010 à 17:32
Salut

recherche sur java dom xml

et hop http://java.developpez.com/faq/xml/?page=dom

Bon dev.
0
monoleilaaa Messages postés 7 Date d'inscription lundi 19 avril 2010 Statut Membre Dernière intervention 8 mai 2010
4 mai 2010 à 23:26
salut

ok, dans ma projet le fichier que je veux lire est un fichier de type "nomfich.dat" pas "nomfich.xml" (dans ce cas la est ce que je peut utiliser la class StreamTokenizer)

je fait se programme en utilisant les class xml mais je trouve un problem

import javax.xml.parsers.*;
import org.w3c.dom.*;
import org.xml.sax.*;
import java.io.*;
import java.util.*;

public class Main {
public static void main(String[] args) {

try{

DocumentBuilderFactory fabrique = DocumentBuilderFactory.newInstance();

DocumentBuilder constructeur = fabrique.newDocumentBuilder();

InputStream fin = new FileInputStream ("doc.xml");

Document document = constructeur.parse(fin);


System.out.println("INFORMATIONS GENERALES");

String uri= document.getDocumentURI();
System.out.println("URI = "+uri);

String xVersion = document.getXmlVersion();

System.out.println("Version XML = "+xVersion);

String xEncoding = document.getXmlEncoding();

System.out.println("XML encoding = "+xEncoding);

String iEncoding = document.getInputEncoding();

System.out.println("Input encoding = "+iEncoding);

boolean standalone = document.getXmlStandalone();

System.out.println("XML standalone = "+standalone);

boolean strictError = document.getStrictErrorChecking();

System.out.println("Strict error checking = "+strictError+"\n");

System.out.println("DOCTYPE");

System.out.println(document.getDoctype());

System.out.println("CONFIGURATION");

System.out.println(document.getDomConfig());

}catch(ParserConfigurationException pce)
{
System.out.println("Erreur de configuration du parseur DOM");

System.out.println("lors de l'appel à fabrique.newDocumentBuilder();");
}catch(SAXException se)
{
System.out.println("Erreur lors du parsing du document");
System.out.println("lors de l'appel à construteur.parse(fin)");
}catch(IOException ioe){
System.out.println("Erreur d'entrée/sortie");
System.out.println("lors de l'appel à construteur.parse(fin)");
}

}

}

l'excution ma donner
Erreur lors du parsing du document
lors de l'appel à construteur.parse(fin)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
5 mai 2010 à 00:06
Je ne connais pas trop la prog Java, mais regardes quelles est l'instruction qui pete avec le debuggeur.
0
monoleilaaa Messages postés 7 Date d'inscription lundi 19 avril 2010 Statut Membre Dernière intervention 8 mai 2010
5 mai 2010 à 00:44
moi aussi je ne connais pas la prog java, en tout cas merci pour vos répenses ,

je suis vraiment bloquer dans cette partie du projet
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
5 mai 2010 à 01:02
Revenons au début,

si tu veux que ce qu'il y a entre les balises


Normalement

un xml.GetElementByTagNAme suffit
et pas tout le code que tu as mis, il faut reflechir un peu.

exemple http://www.java2s.com/Code/JavaAPI/org.w3c.dom/DocumentgetElementsByTagNameStringtagname.htm

Sinon tu peux utiliser des regexp pour prendre que le contenu de

Essaie de comprendre ce que tu fais.

Bon dev
0
monoleilaaa Messages postés 7 Date d'inscription lundi 19 avril 2010 Statut Membre Dernière intervention 8 mai 2010
5 mai 2010 à 14:34
d'accord merci je vais l'essayer
0
johnjjj Messages postés 120 Date d'inscription dimanche 4 avril 2010 Statut Membre Dernière intervention 24 septembre 2012
5 mai 2010 à 15:02
bonjours
j'ai pas bien compris votre question
si tu veux manipuler un ficher XML avec java c'est tres facile il faut travailler avec JDOM parser DOM ou SAX


Si tu veux lire un ficher .dat il faut desérialiser le ficher et traviler
tranquillement

ok bon chance
0
monoleilaaa Messages postés 7 Date d'inscription lundi 19 avril 2010 Statut Membre Dernière intervention 8 mai 2010
5 mai 2010 à 22:59
ben

exactement mon projet est la premiere étape de la réalisation d'un moteur de recherche (la représentation de la base documentaire du moteur de recherche ), cette étape est consiste a lire un dossier qui contient 2 fichier zip et le transformer en 2 fichier dat je fait cette partie

puis je veux lire les 2 fichier dat est construire 2 class document et terme comme j'indiquer dans mon 1er question

ensuite je veux stoker ses information de chaque document et de chaque terme dans un fichier sérialisable pour que le 2eme group puissent l'utiliser dans la 2eme étape l'indexation
0
Rejoignez-nous