Har fått info att man inte ska använda FSO i ASP.NET så då undrar jag vad är det jag ska använda och har ni ett exempel. (Mycket tacksam om ni nu har det) ASP.NET har en baseklass som heter System.IO där allt man behöver för filhantering är placerat. mm Det är så att jag ska göra en räknare som spara data i textfil (tycker det är bättre en en access fil) Bra, då har du allt du behöver i mitt förra inlägg. Jo kanske ska göra det ,en vet inte hur databas fungerar i ASP.NET, dom jag har hittat är för onödigt anvancerad när det gäller att skriva in och hämta data från en Access databas så har du eller någon annan en mycket bra sida med exempel så är jag tacksam Avancerat? Mycket enklare än i ASP och du måste ju lära dig nån gång om du ska hålla på med ASP.NET. Nu Har jag fått ordning på att läsa och skriva till en textfilSkriva/läsa en fil
Sv: Skriva/läsa en fil
I följande exempel så skapas en textfil, en textrad skrivs och objektet stängs.
<codevb.net>
Dim objStreamWriter As StreamWriter
objStreamWriter = File.CreateText( MapPath( "myFile.txt" ) )
objStreamWriter.WriteLine( StringVariable )
objStreamWriter.Close
</code>
För att lägga till textrader i en existerande textfil:
<codevb.net>
dim objStreamWriter As StreamWriter
objStreamWriter = File.AppendText( MapPath( "myFile.txt" ) )
objStreamWriter.WriteLine( StringVariable )
objStreamWriter.Close
</code>
Och slutligen för att läsa från en textfil:
<codevb.net>
dim objStreamReader As StreamReader
dim strInput As String
If File.Exists( MapPath( "myFile.txt" ) ) Then
objStreamReader = File.OpenText( MapPath( "myFile.txt" ) )
strInput = objStreamReader.ReadLine()
While strInput <> Nothing
Response.Write( strInput )
strInput = objStreamReader.ReadLine()
End While
objStreamReader.Close
Else
Response.Write( "Filen existerar ej!" )
End If
</code>
Om du vill läsa mer om System.IO kan du titta på http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemIO.asp
Man kan göra mycket mer än bara trixa med textfiler.
/pD
www.pdc.se
www.pdc.se/blog
www.patrik-dahlen.nuSv: Skriva/läsa en fil
Det den ska göra är att läsa tre rader i en textfil
123 (Antal besökare totalt)
12 (Antal besökare idag)
2004-04-08 (Datumet så man kan få in rätt antal besökare idag :)
Sen använder jag en session så det inte går att använda F5 för att öka påSv: Skriva/läsa en fil
Men lägg till lite i din textfil. Den bör se ut nåt sånt så att du vet vilken rad du ska ändra.
vistorstotal=123
visitdate=2004-04-10
visitorstoday=12
visitdate=2004-04-11
visitorstoday=16
visitdate=2004-04-12
visitorstoday=8
Tror nästan att det är fler fördelar med att använda en databastabell.
1. När textfilen blir stor så tar det längre tid att parsa den rad för rad än att anropa databasen.
2. Lättare att hålla reda på var man ska stoppa sakerna
3. Lättare att få fram data
exempel på tabell:
statID
statDatum
statVisitors
Om du ska ha fram totalen gör du en COUNT(*) på tabellen. Du kan även stoppa in datumintervall.
Enda fördelen med att använda textfilen är om du använder den i WriteOnly syfte. Alltså att du stoppar in en ny rad för varje besökare med t.ex. deras IP. Då skulle den efter ett tag kunna se ut så här:
2004-04-10 09:04:00; 195.1.1.1
2004-04-10 09:04:00; 195.1.1.1
2004-04-10 09:04:00; 195.1.1.1
2004-04-10 09:04:00; 195.1.1.1
2004-04-10 09:04:00; 195.1.1.1
2004-04-10 09:04:00; 195.1.1.1
2004-04-10 09:04:00; 195.1.1.1
2004-04-10 09:04:00; 195.1.1.1
2004-04-10 09:04:00; 195.1.1.1
2004-04-10 09:04:00; 195.1.1.1
2004-04-10 09:04:00; 195.1.1.1
2004-04-10 09:04:00; 195.1.1.1
2004-04-10 09:04:00; 195.1.1.1
Men självklart med olika datum, tider och IP. ;)
Varje gång du kör Append så kommer den nya raden längst ner.
Sen kan du bygga en liten asp.net snurra som parsar textfilen och plockar fram statistik.
/pD
www.pdc.se
www.pdc.se/blog
www.patrik-dahlen.nuSv: Skriva/läsa en fil
Sv: Skriva/läsa en fil
Kolla den här länken:
http://asp.net/Tutorials/quickstart.aspx
Där har du exempel för allt, bland annat databaskopplingar.
/pD
www.pdc.se
www.pdc.se/blog
www.patrik-dahlen.nuSv: Skriva/läsa en fil
Att läsa en rad i en textfil
<code>
Dim objStreamReader As StreamReader
Dim idag As String
objStreamReader = File.OpenText(MapPath("textfilen.txt"))
idag = objStreamReader.ReadLine()
objStreamReader.Close
</code>
Att skriva till en text fil
<code>
Dim sw As StreamWriter = New StreamWriter(MapPath("textfilen.txt"))
sw.WriteLine(idag)
sw.Close()
</code>
Ett enkelt sätt att skriva till en variabel och läsa från en variabel