begin process at 2012 02 15 14:22:26
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Java

 > 

Archives

 > 

Au secours

 > 

extraire titre d'un doc html


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

extraire titre d'un doc html

jeudi 11 mai 2006 à 11:37:07 | extraire titre d'un doc html

kakol

Bonjour,

J'essaie d'adapter la classe HTMLutils du projet Diaporama de steorogath. En effet, je souhaite extraire le titre de mes documents html, ce que fait cette classe. Cependant j'utilise la version 1.4 de java et je crois que la classe HTMLutils est développée avec la version 1.5 car certains objets comme StringBuilder ne sont pas reconnus. J'ai regardé la javadoc et essayé de remplacer StringBuilder par StringBuffer mais j'ai des problèmes avec Matcher. Je suis encore novice en java et je n'arrive pas à me servir de cette classe alors qu'elle me serait bien utile.

Voici le code de la classe :

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.net.MalformedURLException;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class HTMLutils {
public HTMLutils(){
}
public static String getHtmlTitleMarkup(String htmlFile){
try {
BufferedReader in =
new BufferedReader(new FileReader(new File(htmlFile)));
StringBuilder input =
new StringBuilder();
int ch;
while ((ch = in.read()) != -1) input.append((char) ch);
String patternString =
"<title>+[^\"]+</title>";
Pattern pattern = Pattern.compile(patternString, Pattern.CASE_INSENSITIVE);
Matcher matcher = pattern.matcher(input);
while (matcher.find())
{
int start = matcher.start();
int end = matcher.end();
String match = input.substring(start, end);
toreturn = match;
}
}
catch (MalformedURLException e) {
e.printStackTrace();
}
catch (IOException e) {
e.printStackTrace();
}
return toreturn.substring(7,toreturn.length()-8).trim();
}
public static String toreturn;
}


Quelqu'un pourrait m'aider svp? Merci d'avance.

***  Kakol ***
jeudi 11 mai 2006 à 11:51:09 | Re : extraire titre d'un doc html

scaryman

Salut
Moi je te dirais que tout le monde (surtout dans les nouvelles technologies) doit se tenir à jour : donc télécharge Java5 et comme ça plus aucun problème.
Sinon pour le problème, remplacer StringBuilder par StringBuffer revient au même parce qu'ils implémentent tous les deux de CharSequence.

Voila
A++
jeudi 11 mai 2006 à 12:06:01 | Re : extraire titre d'un doc html

kakol

Je ne serais pas contre passer a la version 1.5 mais comme je suis en stage je doit utiliser la version présente dans l'entreprise donc j'ai pas le choix.
En fait voici mon erreur :
La méthode matcher(CharSequence) du type Pattern ne s'applique pas aux arguments (StringBuffer)

Je comprend l'erreur puisque mon input est du type StringBuffer et que la méthode matcher demande un type CharSequence. Le problème c'est que je ne sais pas quoi faire puisque StringBuffer implémente CharSequence.

***  Kakol ***

jeudi 11 mai 2006 à 12:12:39 | Re : extraire titre d'un doc html

super_toinou

si StringBuffer implémente CharSequence fé matcher((CharSequence) tonStringBuffer );
jeudi 11 mai 2006 à 13:44:39 | Re : extraire titre d'un doc html

kakol

il me met : impossible de convertir (StringBuffer) en (CharSequence)

***  Kakol ***
jeudi 11 mai 2006 à 17:29:35 | Re : extraire titre d'un doc html

sheorogath

Membre Club Administrateur CodeS-SourceS
bizarre moichez moi je suis en 1.5 j'ai change juste cette ligne : StringBuffer input = new StringBuffer(); ca compile encore bonne chance je t'aiderais bien plus mai sje ne me sens aps de changer de jdk
vendredi 12 mai 2006 à 09:11:58 | Re : extraire titre d'un doc html

kakol

Réponse acceptée !
Salut,
ça y est j'ai résolu mon problème !!!
En fait ça n'était pas une question de jdk. j'ai aussi changé la ligne du StringBuilder en StringBuffer input = new StringBuffer();
Le problème venait en fait d'un conflit entre blibliothèques. En effet, le package java.lang était présent dans 2 bibliothèques, dans une des 2 StringBuffer implémentait bien CharSequence et dans l'autre non, et bien sur la compilation utilisait la mauvaise bibliothèque.
Merci pour votre aide et bonne continuation

***  Kakol ***
mercredi 21 juin 2006 à 11:02:52 | Re : extraire titre d'un doc html

papillon2000

bonjour à tous, j'ai un probleme kakol, je veux éxtraire le nom des liens dans un code html, c'est présque la même chose que vos, est ce que je peux avoir ton code pour régler mon probléme, sa va beaucoup m'aider, merci.

 

jeudi 22 juin 2006 à 09:25:32 | Re : extraire titre d'un doc html

kakol

Réponse acceptée !
Voici mon code final :

publicclass HtmlUtils {
public HtmlUtils() {
}
publicstatic String getHtmlTitleMarkup(String htmlFile) {
try {
BufferedReader in =
new BufferedReader(new FileReader(new File(htmlFile)));
StringBuffer input =
new StringBuffer();
int ch;
while ((ch = in.read()) != -1)
input.append((
char) ch);
String patternString =
"<title>+[^\"]+</title>";
Pattern pattern = Pattern.compile(patternString, Pattern.CASE_INSENSITIVE);
Matcher matcher = pattern.matcher((CharSequence) input);
while (matcher.find()) {
int start = matcher.start();
int end = matcher.end();
String match = input.substring(start, end);
toreturn = match;
}
}
catch (MalformedURLException e) {
e.printStackTrace();
}
catch (IOException e) {
e.printStackTrace();
}
return toreturn.substring(7, toreturn.length() - 8).trim();
}

}
***  Kakol ***


Cette discussion est classée dans : java, classe, import, pattern, matcher


Répondre à ce message

Sujets en rapport avec ce message

Detection d'une date [ par nounouuuuu2010 ] Bonsoir, Je veux détecter la structure Date dans un texte. j'ai essayé avec ce code [code=java]import java.io.FileInputStream; import java.io.IOExcept Communication entre 2 classes pour une applet [ par Warwick ] Bonjour, je débute le java, et j'ai quelques petits problèmes pour faire communiquer 2 classes entre elles et j'aurais besoin de votre aide...Mon appl afficher résultat d'une classe dans une interface [ par ulysse00 ] bonsoir j'ai malheureusement un problème  j'ai une classe Simplefenetre1 qui execute un problème et je voulais afficher dans une autre classe SimpleFe pb regex java [ par thesleeper ] Bonjour, je travaille actuellement sur les regex en Java. j'ai un ptit pb. le code suivant marche super bien. Mais kand je lis le meme regex , stocké RMI Erreur [ par nosferaptus ] Bonsoir tout le monde, Mon problème est le suivant : j'utilise les RMI et je rencontre cette erreur: "java.lang.ClassCastException: $Proxy0 cannot be recherche des fichiers [ par mariem1988 ] Salem, j'ai un petit problème j'ai une classe Recherche.java permettant d'extraire les fichiers ".cer" d'un disque amovible(clé USB) je teste cette c mail java [ par farahoo ] bonjour jessaie de faire fonctionner ce code mais i ya des erreurs aidez moi svp a les cooriger /* * To change this template, choose Tools | Template onnection refused : RMI [ par ezzineahmed ] bonjour tout le monde, je débute en rmi, j'ai une classe qui retourne la liste des répertoire dans un jtree, j'ai fait l' interface et je l'ai implém gestion des processus legere en java [ par kaled2010 ] bonjour dans cette exemple de code je cherche d'augmenter le nombre de processus poisson svp aidez moi de faire ceci merci d'avance: import java. URGENT SVP: Aide oracle sur JAVA [ par master8686 ] Je suis entrain de preparer un programme de generateur graphique de resuetes SQL mais je suis bloqué par un probléme lié au driver de oracle sous java


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,530 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales