我只是想在这里学习一些有关我的代码的新知识。

我有以下功能,如果我在写入文件时遇到问题,是否可以通过优化的方式返回?或者有更好的方法。

public static bool WriteFile(ByteBuffer data  , String fileName, bool append)
        {
            var writer = new StreamWriter(fileName, append);
            var errorVal = true;
            try
            {
                writer.Write(data);
                writer.Flush();
            }
            catch (Exception ex)
            {

                errorVal = false;
            }
            finally
            {
                writer.Dispose();
            }

            return errorVal;
        }

最佳答案

如果您真的想吃掉所有异常并只返回bool,我宁愿这样:

public static bool WriteFile(ByteBuffer data, String fileName, bool append)
{
    using(var writer = new StreamWriter(fileName, append))
    {
        try
        {
            writer.Write(data);
            return true;
        }
        catch (Exception ex)
        {
            // log the exception details; don't just eat it.
        }
    }
    return false;
}


也就是说,如果这是我自己的代码,那么我可能根本不会在这里捕获异常,而是将其留给调用代码:

public static void WriteFile(ByteBuffer data, String fileName, bool append)
{
    using(var writer = new StreamWriter(fileName, append))
    {
        writer.Write(data);
    }
}

关于c# - 写入文件实现,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8969427/

10-11 15:52