2009-07-23 3 views
0

Je fais une application Web pour télécharger un fichier TSVValidation du fichier TSV en Java

  1. JDK -> 1.4
  2. Struts -> 1
  3. Résine -> 3.0.9

Le fichier TSV est analysé avec "\ t", "\ n", "\ r"

La validation est.

1. Le nom du fichier correspond-il à une convention de dénomination?

2. Est-ce un fichier TSV?

Comment valider une image ou un document Office similaire à TSV?

+0

ad 2) Est-ce suffisant pour pouvoir lire le fichier? –

Répondre

1

dépend de votre définition d'un fichier TSV.

Ont-ils tous la même quantité de colonnes? ou est-il possible d'omettre les dernières colonnes vides?

Si tous ont la même quantité de colonnes, vous pouvez effectuer une première validation sur ce point. Si cela échoue, vous savez que le fichier n'est pas valide.

Ont-ils tous une ligne d'en-tête? Si c'est le cas, vous pouvez l'utiliser pour répondre à la question ci-dessus et valider l'analyse du fichier.

La citation est-elle autorisée? Si oui, est-il autorisé à placer des retours chariot ou des onglets sur les citations? (ne vous aidera pas forcément dans la validation mais vous devrez y penser lors de l'analyse syntaxique)

Est-ce que votre texte est uniquement du texte? vous pouvez tester les caractères non imprimables et les rejeter sur cette base. Encore une fois soyez prudent ici sur l'encodage de caractères utilisé pour le fichier (UTF vs ASCII etc). cela peut être placé dans le code qui effectue la première analyse à partir de fichiers plats dans une structure de données (liste de carte par exemple).

En continuant à forer dans le fichier lui-même, si le format est fixe ou le type de certaines données est connu, vous pouvez faire un analyseur secondaire pour valider ces données (dates, horodatages ou autres chaînes au format fixe). Ce deuxième niveau peut être effectué lorsque vous en avez découvert davantage sur le contenu et que vous traitez les données de la structure ci-dessus. Ce qui précède est toute analyse empirique en tant que telle, vous devez vous attendre à ce que les faux positifs tombent, bien qu'un faux négatif ne devrait pas se produire si vous choisissez des règles auxquelles vos fichiers d'entrée DOIVENT adhérer. Par conséquent, tout le long de la pile de traitement s'attend à rencontrer des données non valides et être prêt à invalider l'ensemble de l'entrée du fichier, autrement dit ne jamais supposer que les tests effectués donnent une garantie complète que le fichier est correct.

J'espère que cela aide.

Questions connexes