J'ai un 3MB et un fichier texte 5MB. Je veux m'assurer que le fichier plus volumineux inclut toutes les lignes qui sont dans le fichier plus petit.
La sortie doit afficher toutes les lignes du fichier plus petit non inclus dans le fichier plus grand. J'essaie de les comparer avec Notepad ++ mais ça se bloque. Word 2007 compare est difficile à comprendre.
J'ai essayé Beyond Compare et WinMerge et fc et bien d'autres. Les lignes ne sont pas dans le même ordre dans deux fichiers - donc l'outil de comparaison dit que la ligne est différente, mais que la même ligne se trouve à un endroit différent dans un gros fichier. Pense que petit fichier est comme ça -
abc def
ghi jkl
mno pqr
yza bcd
Pensez gros fichier, c'est comme ça -
efg hij
mno pqr
ghi jkl
abc def
stu vwx
Je veux sortir ceci -
yza bcd
windows
file-comparison
Angelo
la source
la source
Réponses:
Utiliser un outil de comparaison comme Incomparable , KDiff3 , ou Forcément devrait être suffisant.
METTRE À JOUR:
Je me sentais généreux ce matin alors je vous ai concocté cela. Devrait faire ce que tu veux.
Quelques notes:
1.) Ce code gérera les doublons. Par exemple, si une ligne avec le même texte apparaît deux fois dans le petit fichier, elle est censée apparaître deux fois dans le gros fichier.
2.) Ce code ignore la commande de ligne selon votre cas d'utilisation.
3.) Petit bug concernant les lignes vierges à la fin d'un fichier que je ne voulais pas gâcher. Ce code traite une ligne vide comme une ligne comme n'importe quelle autre ligne tant qu'elle ne se trouve pas à la fin du fichier, auquel cas une ligne vide est autorisée (et ignorée). Par exemple, si le petit fichier comporte 3 lignes vierges à la fin du fichier et aucune autre ligne vierge, alors le fichier volumineux doit comporter au moins 2 lignes vierges au milieu des autres lignes ou 3 lignes vierges au début. fin du fichier.
Courir:
1.) Assurez-vous d'avoir un JDK installée
2.) Assurez-vous que Java est sur votre chemin. Si vous utilisez un système Windows, accédez au Panneau de configuration & gt; Système & gt; Paramètres système avancés & gt; Variables d'environnement et sélectionnez
Path
sous la section Variables système. Ajoutez l’emplacement de votre dossier JDK bin à la variable de chemin d’accès, en veillant à bien le séparer de l’entrée précédente par un point-virgule.C:\Program Files (x86)\Java\jdk1.6.0_38\bin;
3.) Copiez le code ci-dessous dans un fichier nommé
FileLineComparator.java
4.) Ouvrez une invite de commande et accédez au répertoire contenant le fichier que vous venez de créer.
5.) Type
javac FileLineComparator.java
6.) Type
java -cp . FileLineComparator
7.) Profitez!
la source
WinMerge est idéal pour comparer des fichiers texte.
la source