Problème avec les valeurs de virgule sur Photo of Comma Delimited

Problème avec les valeurs de virgule sur Photo of Comma Delimited


Envoyez un fichier .csv contenant les colonnes fournies par une virgule (,). et texte fait par Double Quote (") comme ci-dessous:

"Numéro de facture", "Date de prestation du service", "Date du service éolien", "Date de facturation ouverte", "Réserve de facture de l'impression / présentation", "Succursale de facturation", "Carte de crédit Vilivo "," Paiement des factures sur factures "," "Solde du crédit", "Nom du patient", "Prénom du patient", "Prénom du patient", "Nom du patient", "Nom du paiement de la politique", "Nom du nom de facture". Portée maximale "," Groupe d'informations sur la facture "
12345 "," Ouvert "," 31/03/2009 00:00:00 "," 26/05/2009 08:09:02 "," Faux "," Test "," (346,23 $) ", "" 0,00 $ "," 346,23 $ "," Smith "," John "," 12344 "," Patient "," Test-1234 ","5" "x8" "Multi-Axes de souche, Therafin, 31552","$ 51.12", "1", "Fauteuils roulants"

Vous regardez "5" "x8" "Multi-Axes de souche, Therafin, 31552" , il y en a (") et (,) dans cette valeur.

Alors, comment devrait-il être traité dans le gestionnaire de fichiers de connexion du gestionnaire?

Si vous placez une colonne en tant que colonne (,) et un artiste de texte en guillemet deux ("), vous recevrez cette erreur:

L'exemple d'aperçu contient des attributs de texte ("). Le fichier ne prend pas en charge la saisie de texte dans les données. Les colonnes par défaut avec données et qualification échouent lors de l'exécution.

L'erreur indique que vous ne pouvez pas utiliser les valeurs du délimiteur comme virgule dans le tableau.

La solution est:

1-changez chaque valeur de virgule avec un autre joueur unique dont les valeurs ne contiennent aucun de ces caractères, tel que: barre verticale (|)

2- lire une colonne sécurisée pour un nouvel annonceur et transmettre le texte de l'image pour deux guillemets (")

pour le fichier .csv ci-dessus, nous pouvons utiliser (|) comme délimiteur car il n'y a pas d'exemple de ces caractères dans le code

mais nous ne pouvons changer aucune position (,) et barre verticale (|). parce qu'il y a des cultures qui sont dans l'éthique. Donc j'ai changé chaque "," et "| .

cela remplacera les fournisseurs de la seule couche entourée par les attributs du texte.

Le résultat sera

"Numéro de facture" | "Etat de la facture" | "Date de service de service" | "Date de la facture ouverte" | "Blocage des factures de l’impression / présentation" | "Branche Facture" | "Solde du crédit" | "Solde du crédit" | "Solde du registre" | "Nom du patient" | "Prénom du patient" | "Nom du patient" | "Nom du patient" | "Politique Nom de l'émetteur" | "| Portée maximale "| Informations sur le groupe de facturation "
"12345" | "Ouvert" | "31/03/2009 00:00:00" | "26/05/2009 08:09:02" | "Faux" | "Test" | "(346,23 $)" | "0,00 $" "| 346,23 $ "|" Smith "| John "|" 12344 "|" (Patient) "| 1234 Test "| |"5" "x8" "Multi-Axes de souche, Therafin, 31552"| |"51,12 $" | "1" | "Equipement de fauteuil roulant"

comme vous ne pouvez voir aucune valeur dans les valeurs, nous pouvons maintenant garder le délimiteur en sécurité en tant que (|) et le texte du qualificateur en tant que (").

tout est en ce moment.

mais pour l'automatisation des processus d'automatisation, j'ai ajouté la tâche du livre avant tâche Talk et ajouté ce code dans Visual C # 2008 pour remplacer les annonceurs:

Stockage public ()
{
System.IO.StreamReader sr = System.IO.StreamReader new (@: C: test Reza des utilisateurs) (2) .csv ");
string str1 = (char) 34 + "," + (char) 34;
string str2 = (char) 34+ "| + (car) 34;
string strContent = sr.ReadToEnd (). Changer (str1, str2);
Sr.Close ();
Sr.Dispose ();

System.IO.StreamWriter sw = System.IO.StreamWriter new (@ "C: test Reza des utilisateurs)" (2) .csv ", false);
sw.Write (strContent);
sw.Flush ();
sw.Close ();
Swala ();

Dts.TaskResult = (int) ScriptResults.Success;
}

C'est juste que.

Laisser un commentaire

Fermer le menu