youtodou
youtodou
采纳率0%
2015-06-12 07:26 阅读 5.0k

C#winfrom窗体程序怎么使用文件保存数据?

5

大神们,我是一个刚学编程的小菜鸟,现在想做一个可以给别人使用的C#窗体程序,但现在使用的数据库是SQL2012,考虑到给别人使用的话别人也需要安装SQL2012,但SQL太大了,不现实,怎样才可以不适用数据库保存数据?或者使用文件来保存数据? 知道的大神可以加下我的QQ:1026644711

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

11条回答 默认 最新

  • lvgao2012 lvgao2012 2015-06-12 07:47

    百度:sqlite。这个是不需要安装就能操作的数据库

    点赞 1 评论 复制链接分享
  • caozhy 从今以后生命中的每一秒都属于我爱的人 2015-06-12 08:46

    推荐使用sql server localdb,它几乎和sql server完整版功能一样,不需要你修改代码和数据库,同时,它的运行时安装包只有十几兆,一键安装。
    比localdb再小的是sqlce,它只有几兆。

    点赞 1 评论 复制链接分享
  • u013010499 Summer_djz 2015-06-12 09:09

    // 浏览文件
    openFileDialog1.Filter = "aspx files(*.aspx)|*.aspx";
    // 打开对话框点击打开
    if (openFileDialog1.ShowDialog() == DialogResult.OK)
    {
    richTextBox1.LoadFile(openFileDialog1.FileName,
    RichTextBoxStreamType.PlainText);
    }

    // 保存文件
    DialogResult result = saveFileDialog1.ShowDialog();
    if(result==DialogResult.OK)

    {
    string file = saveFileDialog1.FileName;
    FileStream fs = new FileStream(file,FileMode.Create);

    StreamWriter re = new StreamWriter(fs,Encoding.Default);

    re.Write(richTextBox1.Text.ToCharArray());

    re.Close();

    fs.Close();
    }

    这样就可以搞定了

    点赞 1 评论 复制链接分享
  • bdmh bdmh 2015-06-12 07:30

    最直接的方法,序列化,当然你还可以自定义文件格式,用数据流写入
    序列化参考
    http://www.cnblogs.com/yzenet/p/3622833.html

    点赞 评论 复制链接分享
  • bulusli3 lhl_lqc 2015-06-12 07:32

    如果数据不多的话,可以放在内存中,如果放在文件中,会很麻烦,读写的时候你都需要解析,不建议用文件。

    点赞 评论 复制链接分享
  • caozhy 从今以后生命中的每一秒都属于我爱的人 2015-06-12 08:49
  • caozhy 从今以后生命中的每一秒都属于我爱的人 2015-06-12 08:50

    你把你的数据库连接字符串稍微修改就可以了。目标用户使用你的程序,你只要让它装一个十几兆的安装程序

    点赞 评论 复制链接分享
  • yulele17 yulele17 2015-06-12 09:27

    使用Excel作为后台数据存储,怎么样?

    点赞 评论 复制链接分享
  • ligyu110 老李家的小二 2015-06-12 09:45

    程序中获取到应用程序的相对目录,在目录中创建一个数据存储文件夹DB,
    参考:http://www.cnblogs.com/akwwl/p/3240813.html

    点赞 评论 复制链接分享
  • zhi_ai_yaya 我叫小菜菜 2015-06-14 11:57

    使用文件,或者轻量级的数据库作为数据源,都是可以考虑的。

    点赞 评论 复制链接分享
  • u014180504 u014180504 2015-06-18 04:15

    如果要求不高,可以直接保存到txt或者excel,xml文件里就可以啊,首选推荐用xml文件 . 既可以当文件用,又方便以后你把数据库往数据库里导入,这样一个文件才多大,而且方便其他人使用,如果对数据处理要求高,可以安装一些轻量级的数据库access等等
    另附保存到文件中和读取文件中数据的代码:
    保存到文件中:
    private void button1_Click(object sender, EventArgs e)
    {
    string st = textBox1.Text;
    FileStream fs = null;
    string filePath = @"C:\windows\system32\drivers\etc" + "\hosts";//文件路径以及文件名
    //将待写的入数据从字符串转换为字节数组

    Encoding encoder = Encoding.UTF8;
    byte[] bytes = encoder.GetBytes("\n "+st+"\n\r");
    try
    {
    fs = File.OpenWrite(filePath);
    //设定书写的开始位置为文件的末尾

    fs.Position = fs.Length;
    //将待写入内容追加到文件末尾

    fs.Write(bytes, 0, bytes.Length);
    }
    catch (Exception ex)
    {
    MessageBox.Show("xi");
    }
    finally
    {
    fs.Close();
    }

    //写入代码(去掉原有内容)
    //StreamWriter sw = new StreamWriter(@"C:\Users\lgh\Desktop" + "\hosts");//创建StreamWriter对象sw
    //sw.Write(this.textBox1.Text);//把this.textBox2.Text这字符串写入到 sw里
    //sw.Dispose();//释放流。

        }
     读取文件代码:
      private void button2_Click(object sender, EventArgs e)
        {
            string str;
            StreamReader sr = new StreamReader(@"C:\windows\system32\drivers\etc" + "\\hosts", false);
            str = sr.ReadToEnd().ToString();
            sr.Close();
            this.textBox2.Text = str;///读取
    
        }
                希望会对你有帮助
    
    点赞 评论 复制链接分享

相关推荐