Új hozzászólás Aktív témák
-
válasz
sztanozs
#2231
üzenetére
Köszi a választ!
Megtaláltam a megoldást, de teljesen más megközelítéssel.
CSV nem tárol semmit de egy ini fileal megoldható hogy menjen.Schema.ini-fileba:
[adat.csv]
ColNameHeader=False
Format=Delimited(;)
Col1=Sorszám integer
Col2=Cím1 char
Col3=Cím2 char
Col4=Cím3 char
Col5=Cím4 char
...
és így továbbEzzel rákényszerítve hogy minden oszlop előre meghatározott adat típusú legyen.
-
VB.NET hez kellene kis segítség.
Egy csv-ből olvasok be adatot datatable-be majd megjelenítem egy datagridviewbe. Megy oda vissza írás olvasás. Viszont valamiért az oszlopok adattípusát automatán változtatja a progi, pedig nincs megadva sehol hogy milyen típusú egy oszlop és én sem szeretném megváltoztatni.
Hogyan tudom kikapcsolni azt hogy a datagridview ne kezeljen automatán adattípust, vagy alapból legyen minden string típusú?
A csv-ből így olvasok be:
Dim CnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & CurDir() & "\Tablazat" & ";Extended Properties=""text;HDR=YES;FMT=Delimited"";"
Using Adp As New OleDbDataAdapter("select * from adat.csv", CnStr)
Adp.Fill(adat)
End Using
adattablamegjelenito.DataSource = adatEzzel meg írom vissza:
Sub SetDataTable_To_CSV(ByVal dtable As DataTable, ByVal path_filename As String, ByVal sep_char As String)
Dim writer As System.IO.StreamWriter
Try
writer = New System.IO.StreamWriter(path_filename, False, System.Text.Encoding.Default)
Dim _sep As String = ""
Dim builder As New System.Text.StringBuilder
For Each col As DataColumn In dtable.Columns
builder.Append(_sep).Append(col.ColumnName)
_sep = sep_char
Next
writer.WriteLine(builder.ToString())
For Each row As DataRow In dtable.Rows
_sep = ""
builder = New System.Text.StringBuilder
For Each col As DataColumn In dtable.Columns
builder.Append(_sep).Append(row(col.ColumnName))
_sep = sep_char
Next
writer.WriteLine(builder.ToString())
Next
Catch ex As Exception
Finally
If Not writer Is Nothing Then writer.Close()
End Try
End SubTehát ha beírok csak számot az oszlopba akkor utána ha elmentem majd betöltöm akkor hibával elszáll ha betűket akarok beírni. Ugyanígy ha a csv-be csak számok vannak egy oszloppba akkor szintén nem lehet betűt beírni. Én minden egyes oszlopot stringként akarok kezelni.
Új hozzászólás Aktív témák
- Bomba ár! Dynabook Portege X40-K - i5-1240P I 16GB I 256SSD I 14" FHD I Cam I W11 I Garancia!
- 160 - 177 - 178 - Lenovo LOQ (15IRX9) - Intel Core i7-13650HX, RTX 4060 (ELKELT)
- 164 - Lenovo Legion Pro 7 (16IRX9H) - Intel Core i9-14900HX, RTX 4090
- BESZÁMÍTÁS! GIGABYTE A520M R5 1400 8GB DDR4 256GB SSD 500GB HDD GTX 1050 Ti 4GB ZALMAN S3 400W
- BESZÁMÍTÁS! LENOVO ThinkPad P15 Gen2 munkaállomás - i7 11800H 64GB DDR4 1TB SSD RTX A2000 4GB W
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

