2017-02-17 81 views
0
PupilID = "\" & PupilID & ".txt" 

If Dir$(PupilID) = "" Then 
    Dim swpupilinfo As New StreamWriter(Application.StartupPath & PupilID, True) 
    swpupilinfo.Close() 
End If 

If System.IO.File.Exists(filename) = True Then 
    readerlinecount = File.ReadAllLines(Dir$(PupilID)) 
End If 

Dim objwritere As New System.IO.StreamWriter(filename, True) 
objwritere.WriteLine(quiztaken & " correct answers " & correct & " wrong answers " & wrong & " total mark " & totalmark) 
objwritere.Close() 

这是我用来写入文本文件,所有变量都有值,但是当我打开.txt文件时,它不包含任何内容。 编程不是很好,只是要让我的老师给我。写入文本文件不起作用,没有文本产生

+3

请发布[mcve],什么是***文件名***,*** quiztaken ***等变量?由于此示例不完整,因此无法验证此示例。也请解释什么是不工作,你正在生成两个文本文件,都是空的? – Esko

+0

@Esko quiztaken有一个整数值,它读取文件并告诉你这是哪个测验。 filename是txt文件的位置,因此是Debug文件夹。正确和错误包含整数值,总标记向您显示正确答案的总数。 –

回答

1

您提供的一半代码似乎与您所问的问题无关?以下是写入文本文件的简单实现。

您似乎正在使用pupilIdfileName作为文件路径位置,可能会造成一些混淆?

StreamWriter其中实现IDisposable通过TextWriter,我建议使用它。看下面

Dim pupilId As Integer = 1 
Dim path As String = String.Format("\\{0}.txt", pupilId) 

Using sw As New StreamWriter(filePath,True) 
    sw.WriteLine("Whatever text you want here") 
End Using