Supprimer quelques lignes qui sont prédéfinés dans une liste d'un fichier txt en [Résolu]

moh05 28 Messages postés samedi 14 janvier 2006Date d'inscription 23 mai 2012 Dernière intervention - 28 déc. 2011 à 11:26 - Dernière réponse : moh05 28 Messages postés samedi 14 janvier 2006Date d'inscription 23 mai 2012 Dernière intervention
- 2 janv. 2012 à 14:52
bonjour ,
j'ai un fichier txt qui contient (une entete a supprimé +données a récupérée) ,moi je veux récupérer ces données et les injecters dans une table oracle (10champs ) :
mon idée est de supprimé toutes les lignes qui sont inutiles donc l'idée est de nettoyer le fichier de ces lignes ,en utilisant une liste donc la quelle je déclare tout les début de ligne qui vont etre supprimé .
veuillez m'orienter , est ce que mon idée est bonne ?et si c'est possible de me fournir un script qui qui fait ce traitement .

merci d'avance .
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
Tupad 239 Messages postés lundi 5 décembre 2005Date d'inscription 27 août 2012 Dernière intervention - 29 déc. 2011 à 12:59
3
Merci
j'ai essayé avec le code suivant et ca fonctionne
 
public void RemoveTextLines(IList<string> linesToRemove)
        {
            // Read file 
            using (StreamReader sr = new StreamReader("a.txt"))
            {
                // Write new file 
                using (StreamWriter sw = new StreamWriter("b.txt"))
                {
                    // Read lines 
                    string line;
                    while ((line = sr.ReadLine()) != null)
                    {
                        // Look for text to remove 
                        if (!this.ContainsString(line, linesToRemove))
                        {
                            // Keep lines that does not match 
                            sw.WriteLine(line);
                        }
                    }
                }
            }
        }

        private bool ContainsString(string line, IList<string> linesToRemove)
        {
            foreach (string s in linesToRemove)
                if (line.StartsWith(s))
                    return true;
            return false;
        }



le fichier "a.txt" contient les lignes suivantes :
asrety
sgfrhjk
etryuyy
cvbjkj
d
epokgth

berty
rtyu

Merci Tupad 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 72 internautes ce mois-ci

Commenter la réponse de Tupad
cs_jopop 1540 Messages postés lundi 26 mai 2003Date d'inscription 1 août 2013 Dernière intervention - 28 déc. 2011 à 11:44
0
Merci
re,

pourquoi refaire un topic (cf. celui-ci) ?
Et encore une fois on est là pour "aider", pas pour "faire".
Commence à coder ton truc et viens nous voir quand tu coinces.

Et quand bien même un helper s'ennuierait au point de te faire ton truc, ça manque de précisions (contenu réel du fichier, structure de ta table Oracle ...).
Commenter la réponse de cs_jopop
moh05 28 Messages postés samedi 14 janvier 2006Date d'inscription 23 mai 2012 Dernière intervention - 28 déc. 2011 à 15:35
0
Merci
j'ai commencé à codé mon traitement mais ça ne marche pas :
public static class TextLineRemover
{
public static void RemoveTextLines(IList<string> linesToRemove, string filename, string tempFilename)
{
// Initial values
int lineNumber = 0;
int linesRemoved = 0;
DateTime startTime = DateTime.Now;

// Read file
using (var sr = new StreamReader(monfichier))
{
// Write new file
using (var sw = new StreamWriter(tempFilename))
{
// Read lines
string line;
while ((line = sr.ReadLine()) != null)
{
lineNumber++;
// Look for text to remove
if (!ContainsString(line, linesToRemove))
{
// Keep lines that does not match
sw.WriteLine(line);
}
voici mon code mais je suis bloqué .......
Commenter la réponse de moh05
cs_jopop 1540 Messages postés lundi 26 mai 2003Date d'inscription 1 août 2013 Dernière intervention - 28 déc. 2011 à 15:51
0
Merci
Re,

plusieurs questions :
- la première, celle que n'importe qui te posera : quelle est l'erreur ?
- d'où sort la fonction ContainsString() ?
- sais-tu d'avance quelles lignes supprimer que tu puisses ainsi les mettre en paramètre de ta fonction ? (ça me parait un peu bizarre).

Sinon à part un manque d'accolade qui de toute façon t'empêcherait purement et simplement de compiler, ton code me parait correct.
Commenter la réponse de cs_jopop
moh05 28 Messages postés samedi 14 janvier 2006Date d'inscription 23 mai 2012 Dernière intervention - 2 janv. 2012 à 14:52
0
Merci
merci beaucoup pour votre réponse .
Commenter la réponse de moh05

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.