- - PR -
CSVファイルのインポートについて
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2008-11-05 11:39
いつもお世話になります。
CSVファイルのインポートなのですが、以下のようにデータを読み込んでいるのですが ある項目が文字型でなく日付型に変換されて読み込まれてしまいます。 読込先のテーブルは、文字型にしていてステップで確認したところdtのところに読み込まれた際に既に日付型に変換されているようです。 データは、「01-1001-01」のように書かれたものです。 このデータを日付型に変換されずに文字型として読み込ませるにはどうしたらいいのでしょうか? ご存知の方、いらっしゃいましたら教えてください。 よろしくお願いいたします。 Private Sub btnUpload1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUpload1.Click Dim ofd As New OpenFileDialog ofd.FileName = "default.csv" ofd.Filter = "CSVファイル(*.csv)|*.csv|すべてのファイル(*.*)|*.*" ofd.FilterIndex = 1 ofd.Title = "CSVファイルを選択してください" ofd.RestoreDirectory = True If ofd.ShowDialog() = DialogResult.OK Then Dim preCursor As Cursor = Cursor.Current ' 元のWaitカーソルを保持 Cursor.Current = Cursors.WaitCursor ' カーソルを待機カーソルに変更 '------------------------------------------------------------------------------------------- '接続文字列 Dim conString As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" _ + System.IO.Path.GetDirectoryName(ofd.FileName) + ";Extended Properties=""text;HDR=No;FMT=Delimited""" Dim con As New System.Data.OleDb.OleDbConnection(conString) Dim commText As String = "SELECT * FROM [" + System.IO.Path.GetFileName(ofd.FileName) + "]" Dim da As New System.Data.OleDb.OleDbDataAdapter(commText, con) Dim dt As New DataTable da.Fill(dt) Dim myRow As Integer Dim i As Integer Dim j As Integer myRow = dt.Rows.Count Dim RS As DAO.Recordset RS = DB.OpenRecordset("t_LIST") Dim myFlag As Short For i = 0 To myRow - 1 RS.AddNew() For j = 0 To myCol - 1 RS.Fields(j + 1).Value = dt.Rows(i)(j) Next RS.Update() RS.MoveFirst() Next RS.Close() MsgBox("処理が終了しました。") Else MsgBox("処理を中止します") End If End Sub | ||||
|
投稿日時: 2008-11-05 11:47
過去スレぺったん。
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=20039&forum=7&3 | ||||
|
投稿日時: 2008-11-05 13:07
rainさま、ありがとうございます。 インポートでばっかり検索していたので気付きませんでした。 |
1