| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 833 人关注过本帖
标题:如何关闭已经打开的txt文本
只看楼主 加入收藏
hsktm
Rank: 1
等 级:新手上路
帖 子:7
专家分:4
注 册:2012-9-24
结帖率:0
收藏
 问题点数:0 回复次数:2 
如何关闭已经打开的txt文本
前提:文件在程序运行前是打开的,程序启动后,运行中判断出文本被打开,此时如何关闭?
尝试了类似的操作
  FileStream fs2 = File.Create(@file);//类似的还有很多都不行,报错进程打开(因为文本打开状态)
  fs2.CLose();
file是string格式的路径信息,(文件是程序建立的,关闭程序后我先打开文本,然后我再运行程序)。执行读取等操作的时候会报错,提示进程已经打开。
create 只是这里的一个例子,其他的我也试验了 都会报错
我想加到catch中,通过关闭这个文件,对这个错误进行处理。
搜索更多相关主题的帖子: 运行程序 create 如何 file 信息 
2014-01-22 11:50
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
关键看文件是谁打开的  谁打开谁关闭   你想关闭其他进程打开的文件估计会很难吧

DO IT YOURSELF !
2014-01-22 12:46
wangnannan
Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18
等 级:贵宾
威 望:87
帖 子:2546
专家分:9359
注 册:2007-11-3
收藏
得分:0 
程序代码:
using using System.Runtime.InteropServices;

[DllImport("kernel32.dll")]
public static extern IntPtr _lopen(string lpPathName, int iReadWrite);

[DllImport("kernel32.dll")]
public static extern bool CloseHandle(IntPtr hObject);

public const int OF_READWRITE = 2;
public const int OF_SHARE_DENY_NONE = 0x40;
public readonly IntPtr HFILE_ERROR = new IntPtr(-1);
private void button1_Click(object sender, EventArgs e)
{
    string vFileName = @"c:\temp\temp.bmp";
    if (!File.Exists(vFileName))
    {
        return;
    }
    IntPtr vHandle = _lopen(vFileName, OF_READWRITE | OF_SHARE_DENY_NONE);
    if (vHandle == HFILE_ERROR)
    {
        //文件被占用
          using (Process p = new Process())
             {
                 p.StartInfo = new ProcessStartInfo("C:\\a.txt");
                 p.Start();
                 p.WaitForExit();
             }
    }
   
    CloseHandle(vHandle);
}
临时写的 没测 你看看这个DEMO 做个参考

[ 本帖最后由 wangnannan 于 2014-1-22 13:00 编辑 ]

出来混,谁不都要拼命的嘛。 。拼不赢?那就看谁倒霉了。 。有机会也要看谁下手快,快的就能赢,慢。 。狗屎你都抢不到。 。还说什么拼命?
2014-01-22 12:57
快速回复:如何关闭已经打开的txt文本
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.079723 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved