SQL Serverの/ ASP.Netからパイプ区切り形式のテキストファイルに書き込む方法は?
-
21-09-2019 - |
質問
私は常に(定期的に)更新する必要があるテキストファイルを持っています。
私が欲しいのは、ASP.Netを使用してSQL Serverデータベースからデータを出力構文と、おそらくいくつかのコードです。私がこれまで持っているコードは、次のとおりです。
<%@ Import Namespace="System.IO" %>
<script language="vb" runat="server">
sub Page_Load(sender as Object, e as EventArgs)
Dim FILENAME as String = Server.MapPath("Output.txt")
Dim objStreamWriter as StreamWriter
' If Len(Dir$(FILENAME)) > 0 Then Kill(FILENAME)
objStreamWriter = File.AppendText(FILENAME)
objStreamWriter.WriteLine("A user viewed this demo at: " & DateTime.Now.ToString())
objStreamWriter.Close()
Dim objStreamReader as StreamReader
objStreamReader = File.OpenText(FILENAME)
Dim contents as String = objStreamReader.ReadToEnd()
lblNicerOutput.Text = contents.Replace(vbCrLf, "<br>")
objStreamReader.Close()
end sub
</script>
<asp:label runat="server" id="lblNicerOutput" Font-Name="Verdana" />
は、PHPで、それは簡単ですが、ネットで、私は見当もつかない。あなたがデータベース接続で私を助けることができるとのファイルOUTPUT.TXTにパイプ区切り形式でデータを書き込むためのどのようにした場合、それは素晴らしいことでした。みんなありがとう!
解決 2
Dim dr As SqlDataReader
Dim FILENAME as String = Server.MapPath("Output.txt")
Dim objStreamWriter as StreamWriter
objStreamWriter = File.CreateText(FILENAME)
sqlConn.Open()
'opening the connection
myCommand = New SqlCommand("SELECT id, title, expirydate, creationdate from tbl where tbl.isactive=1 and getdate()<=ExpiryDate order by creationdate asc", sqlConn)
'executing the command and assigning it to connection
dr = myCommand.ExecuteReader()
While dr.Read()
objStreamWriter.WriteLine("{0}|{1}|{2:yyyy-MM-dd}|{3:yyyy-MM-dd}", dr(0), dr(1), dr(2), dr(3))
End While
dr.Close()
sqlConn.Close()
objStreamWriter.Close()
Dim objStreamReader as StreamReader
objStreamReader = File.OpenText(FILENAME)
他のヒント
私はあなたのページには、少なくとも少なくとも驚きの原則を以下のように、少なくともコードビハインドファイルにこのコードを入れて起動します。
ファイルにものを書くために、最も簡単な方法は、<のhref =「http://msdn.microsoft.com/en-us/library/system.io.file.writealltext.aspx」のrel = "nofollowをを使用することですnoreferrer "> File.WriteAllText の方法(アプリケーションがファイルシステムのための適切な権限を持っていると仮定)。
あなたは SqlConnectionオブジェクト<を使用してデータベースにアクセスすることができます/>クラスとあなたはで必要なものは何でもコマンドを実行SqlCommandオブジェクトに。あなたが戻ってデータベースからデータを得たら、ちょうど(データの膨大な量がありませんと仮定)の配列にそれを回すとのhref = "http://msdn.microsoft.com/en-us/library/ <呼び出します57a79xd0.aspx」REL = "nofollowをnoreferrer"> String.Join の方法のようなので、String.Join("|", yourData)
。