如何捕捉磁盘空间满的异常

inter1 2006-05-18 04:25:12
如何捕捉磁盘空间满的异常

try
{
SaveFileDialog sfd1= new SaveFileDialog();
FileStream fs = ( FileStream )sfd1.OpenFile();
StreamWriter sw1 = new StreamWriter( fs, "" )
);
sw1.AutoFlush = true;
sw1.Write( "test" );
sw1.Close();
}
catch( ??? )
{
...全文
312 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
llyzcy 2006-12-27
  • 打赏
  • 举报
回复
up
zminhao 2006-12-27
  • 打赏
  • 举报
回复
using System;
using System.IO;

class Test
{
public static void Main()
{
DriveInfo[] allDrives = DriveInfo.GetDrives();

foreach (DriveInfo d in allDrives)
{
Console.WriteLine("Drive {0}", d.Name);
Console.WriteLine(" File type: {0}", d.DriveType);
if (d.IsReady == true)
{
Console.WriteLine(" Volume label: {0}", d.VolumeLabel);
Console.WriteLine(" File system: {0}", d.DriveFormat);
Console.WriteLine(
" Available space to current user:{0, 15} bytes",
d.AvailableFreeSpace);

Console.WriteLine(
" Total available space: {0, 15} bytes",
d.TotalFreeSpace);

Console.WriteLine(
" Total size of drive: {0, 15} bytes ",
d.TotalSize);
}
}
}
}
inter1 2006-05-18
  • 打赏
  • 举报
回复
不好意思,还得请问,那么如何判断

先检测磁盘剩余空间是否大于你文件的空间?
canserly 2006-05-18
  • 打赏
  • 举报
回复
楼上的解决方法是比较好的,自己做的比较放心,
我说的是判断条件不要用==判断,这样容易出错,用string的indexof来判断是否包含比较好
用:if(错误信息.IndexOf(判断信息)!= -1))
来判断比== 好,也请有更好方法的人说一下具体实现思路
yx10 2006-05-18
  • 打赏
  • 举报
回复
我认为你在写文件时,先检测磁盘剩余空间是否大于你文件的空间,
如果大于
就抛出异常,
throw( new Exception("磁盘空间不足"));
然后就可以捕获了
yx10 2006-05-18
  • 打赏
  • 举报
回复
catch(IOException exception)
{
if(exception.Message=="磁盘空间不足。\r\n")
{
//磁盘空间不足
}
}
万一操作系统不是 简体中文版的 不就挂了
inter1 2006-05-18
  • 打赏
  • 举报
回复
楼上,能否具体说一下
canserly 2006-05-18
  • 打赏
  • 举报
回复
if(exception.Message=="磁盘空间不足。\r\n")
这样判断不大好,
用indexof判断=="磁盘空间不足。"是否属于该异常
viena 2006-05-18
  • 打赏
  • 举报
回复
catch(IOException exception)
{
if(exception.Message=="磁盘空间不足。\r\n")
{
//磁盘空间不足
}
}
Mittermeyer 2006-05-18
  • 打赏
  • 举报
回复
应该会触发一个IOException。
inter1 2006-05-18
  • 打赏
  • 举报
回复
输出的文件到磁盘上,但空间满,这样的异常,如何catch

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧