【问题标题】:Write text file and open at same time写入文本文件并同时打开
【发布时间】:2012-11-24 10:39:40
【问题描述】:

我需要在按钮的点击事件上从文本框中写入文本文件

写完后我需要打开同一个文件

写入时不需要保存该文件。

谁能提供示例代码?

编辑

其实你误会了,我需要创建临时文件,而不是已经存在的文件..需要创建,写入,同时它会打开读取..有可能吗?

【问题讨论】:

  • 你试过了吗?如果是这样,请说明您遇到的确切问题。
  • 在此处粘贴您的代码。你试过什么?
  • 你想写而不保存?我不知道你在说什么。
  • @TimSchmelter 其实你误会了,我需要创建临时文件,而不是在已经存在的文件中..需要创建,写入,同时它可以打开读取..有可能?
  • @sphair 请检查我的 cmets

标签: c# winforms


【解决方案1】:

StreamWriter 写入文本文件。它可以实现简单高效的文本输出。最好将其放在 using 语句中,以确保在不再需要时将其从内存中删除。它提供了几个构造函数和许多方法。

Click Here

Process.Start(文件)

【讨论】:

    【解决方案2】:

    再次打开文件后需要做什么?

    简单地说,您可以使用

    将文本写入文件
    System.IO.File.WriteAllText("path",textbox1.Text);
    

    您可以使用以下命令打开文件:

    system.IO.File.Open() // and the other variants .OpenText, OpenWrite
    

    【讨论】:

    • 还有System.IO.File.ReadAllText,让读取任务变得非常简单。
    • 其实你误会了,我需要创建临时文件,而不是已经存在的文件..需要创建,写入同时它会被打开读取..有可能吗?
    • 您是否阅读过 File.WriteAllText 的文档?并且:如果你想创建一个临时文件,那么你应该使用System.IO.Path.GetTempFileName
    【解决方案3】:

    这是你要找的吗?

    FileStream currentFileStream = null;//EDIT
    string tempFilePath = Directory.GetCurrentDirectory() + "\\TEMP.txt";
    
    if (!File.Exists(tempFilePath))
    {
        currentFileStream = File.Create(tempFilePath);//creates temp text file
        currentFileStream.Close();//frees the file for editing/reading
    }//if file does not already exist
    
    File.WriteAllText(tempFilePath, textbox1.Text);//overwrites all text in temp file
    
    //Inside your exit function:
    if(File.Exists(tempFilePath)) File.Delete(tempFilePath);//delete temp file
    

    【讨论】:

    • get error 'System.IO.FileStream' 不包含采用 0 个参数的构造函数
    • 对不起,我已经或多或少地写了代码,现在应该可以工作了(只需将 currentFileStream 更改为初始化为 null)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-08-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-07
    相关资源
    最近更新 更多