が
は、データの取得...のは、一度にこの一歩に取り組むみましょう。これが役立ちます
希望を助けることができる:
文字列にテキストファイルを取得します。変数。この
here
上
string readText = File.ReadAllText("path to my file.txt");
もっと今、私たちは、文字列でそれを持っていることを私たちは新しい行に分割するためのそれ
List<string> listStrLineElements = List<string> listStrLineElements = line.Split(new string[] { Environment.NewLine }, StringSplitOptions.None).ToList();// You need using System.Linq at the top.
その他のオプションを解析することができますを見つけることができhere
これで、各要素を独自の行に分割する必要があります。
List<string> rowList = listStrLineElements.SelectMany(s => s.Split('\t')).ToList();// The \t is an *escape character* meaning tab.
:あなたは私たちがこのような何かを行うことができるため、あなたが...それはタブが(!(CSV)カンマ区切りのようなものがモダンなより一般的ですが、タブが動作します)良いですを区切りと言いました今、あなたは(
がデータベースに
コードプロジェクトを接続する...私たちは今、私達のデータベース接続を必要とすることを意味する、これらのエントリのそれぞれ1を通過し、データベースに挿入するループのようなものを必要とします別の有用なサイト)は
thisチュートリアルを作成していますg C#からのSQL接続。以下のコードの要約である(記事を読んでください、このウェブサイトでは、人々は/あなたに代わってコードを見つける書く持ってここにはありません!)
あなたはSQLの名前空間を使用していることを確認し...
using System.Data.SqlClient;
private void sqlCon(List<string> x)
{
//Replace with your server credentials/info
SqlConnection myConnection = new SqlConnection("user id=username;" +"password=password;server=serverurl;" +"Trusted_Connection=yes;" +"database=database; " + "connection timeout=30");
try
{
myConnection.Open();
for (int i = 0; i <= x.Count -4; i += 4)//Implement by 3...
{
//Replace table_name with your table name, and Column1 with your column names (replace for all).
SqlCommand myCommand = new SqlCommand("INSERT INTO table_name (Column1, Column2, Column3, Column4) " +
String.Format("Values ('{0}','{1}','{2}','{3}')", x[i], x[i + 1], x[i + 2], x[i + 3]), myConnection);
myCommand.ExecuteNonQuery();
}
}
catch (Exception e){Console.WriteLine(e.ToString());}
try{myConnection.Close();}
catch (Exception e){Console.WriteLine(e.ToString());}
}
メモループを変更する必要がある可能性があります。その背後にあるロジックは、iを4で実装することで各列を読むことができるので、Count(エントリ数)は4より小さくなければならないので、インデックスを外れないようにする必要があります(メモ帳I私はすべての論理が正しいかどうかは分かりませんが、もしそれが間違っていれば修正する必要がある場合は、単にコードを書くだけではありません)。
ご注意ください!
のSQLインジェクションを開いたままにしておくと、実際にはSQLパラメータを検索する必要がありますが、これでジョブが完了します。ここで私は読まなければならない考慮するいくつかの記事です:
Preventing SQL Injections in C#
What is an SQL Injection (W3-schools)
は大きな助けてくれてありがとう。 ちょっとしたこと: forループは "i <= x.Count"である必要があります。そうしないと最後のエントリは保存されません。 また、最初は接続が失敗しました。接続していましたが、何も保存していませんでした。私は "Server =(local);" + "データベース=名前;" + "Trusted_Connection = yes;"すべての大文字とセミコロンで。加えて、ユーザーやキャラクターがいないので、あなたが私に送ったブログは、信頼できる接続を使用するときには必要ないと言っていました。 正しい方法で私を導いてくれてありがとう。 –