Hvordan forhindrer du fører nuller blir strippet ved import av Excel-format ved hjelp av C #

stemmer
6

Jeg er i stand til å koble til og lese en Excel-fil uten problem. Men når du importerer data som zipcodes som har ledende nuller, hvordan kan du hindre excel fra gjette datatype og i prosessen stripping ut innledende nuller?

Publisert på 22/08/2008 klokken 15:02
kilden bruker
På andre språk...                            


8 svar

stemmer
1

Prefikset med '

Svarte 22/08/2008 kl. 15:06
kilden bruker

stemmer
1

Prefixing innholdet i cellen med "krefter Excel for å se det som tekst i stedet for et tall. The 'vises ikke i Excel.

Svarte 22/08/2008 kl. 15:08
kilden bruker

stemmer
0

Jeg tror måten å gjøre dette ville være å formatere kilden Excel-fil slik at kolonnen er formatert som tekst i stedet for General. Velg hele kolonnen og høyreklikk og velg Formater celler, velger tekst fra listen over alternativer.

Jeg tror det ville eksplisitt definere denne kolonnen innholdet er tekst og bør behandles som sådan.

La meg vite om det fungerer.

Svarte 22/08/2008 kl. 15:08
kilden bruker

stemmer
6

Jeg tror du må sette alternativet i connect strengen å tvinge tekstlig import i stedet for automatisk å oppdage det.

Provider=Microsoft.ACE.OLEDB.12.0;
    Data Source=c:\path\to\myfile.xlsx;
    Extended Properties=\"Excel 12.0 Xml;IMEX=1\";

Din kjørelengde kan variere avhengig av hvilken versjon du har installert. IMEX = en utvidet eiendom forteller Excel til å behandle blandede data som tekst.

Svarte 22/08/2008 kl. 15:10
kilden bruker

stemmer
0

Lagre filen som en tabulatordelt tekstfil har også fungert bra.

--- gamle Dessverre kan vi ikke stole på kolonnene i excel doc å bo i et bestemt format som brukerne skal lime inn data i den regelmessig. Jeg ønsker ikke at appen krasjer hvis vi er avhengig av en viss datatype for en kolonne.

prefikset med "ville fungere, er det en rimelig måte å gjøre det auto når data som allerede eksisterer i excel doc?

Svarte 22/08/2008 kl. 15:16
kilden bruker

stemmer
1

Det er et register hack som kan tvinge Excel til å lese mer enn de første 8 radene når du leser en kolonne for å bestemme type:

Endring

HKLM\Software\Microsoft\Jet\4.0\Engines\Excel\TypeGuessRows 

For å være 0 for å lese alle rader, eller et annet nummer for å sette den til at antall rader.

Ikke at dette vil ha en slighht ytelse hit.

Svarte 24/03/2009 kl. 12:41
kilden bruker

stemmer
0

Sende verdi 00022556som '=" 00022556"'fra SQL Server er utmerket måte å håndtere ledende null problem

Svarte 26/12/2013 kl. 08:49
kilden bruker

stemmer
0

Legg til "\ t" før streng. Det vil gjøre strengen virke i en ny fane.

Svarte 01/04/2015 kl. 13:35
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more