精华内容
下载资源
问答
  • Winform 读写INI文件

    2017-05-03 08:21:09
    Winform 读写INI文件,自己摸索出来的。
  • C# WinForm读写INI文件

    热门讨论 2009-03-30 23:55:03
    C# WinForm读写INI文件 C# WinForm读写INI文件 C# WinForm读写INI文件
  • winform 读写ini文件

    2021-04-07 17:31:03
    IniFileHelper类; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Runtime.InteropServices; using System.Text;... // ini配置文件路径 .
    IniFileHelper类;
    
    using System;
    using System.Collections.Generic;
    using System.IO;
    using System.Linq;
    using System.Runtime.InteropServices;
    using System.Text;
    
    namespace UserGG
    {
        class IniFileHelper
        {
            string strIniFilePath;  // ini配置文件路径
    
            // 返回0表示失败,非0为成功
            [DllImport("kernel32", CharSet = CharSet.Auto)]
            private static extern long WritePrivateProfileString(string section, string key, string val, string filePath);
    
            // 返回取得字符串缓冲区的长度
            [DllImport("kernel32", CharSet = CharSet.Auto)]
            private static extern long GetPrivateProfileString(string section, string key, string strDefault, StringBuilder retVal, int size, string filePath);
    
            [DllImport("Kernel32.dll", CharSet = CharSet.Auto)]
            public static extern int GetPrivateProfileInt(string section, string key, int nDefault, string filePath);
    
            /// <summary>
            /// 无参构造函数
            /// </summary>
            /// <returns></returns>
            public IniFileHelper()
            {
                this.strIniFilePath = Directory.GetCurrentDirectory() + "\\sysconfig.ini";
            }
    
    
            /// <summary>
            /// 有参构造函数
            /// </summary>
            /// <param name="strIniFilePath">ini配置文件路径</param>
            /// <returns></returns>
            public IniFileHelper(string strIniFilePath)
            {
                if (strIniFilePath != null)
                {
                    this.strIniFilePath = strIniFilePath;
                }
            }
    
    
            /// <summary>
            /// 获取ini配置文件中的字符串
            /// </summary>
            /// <param name="section">节名</param>
            /// <param name="key">键名</param>
            /// <param name="strDefault">默认值</param>
            /// <param name="retVal">结果缓冲区</param>
            /// <param name="size">结果缓冲区大小</param>
            /// <returns>成功true,失败false</returns>
            public bool GetIniString(string section, string key, string strDefault, StringBuilder retVal, int size)
            {
                long liRet = GetPrivateProfileString(section, key, strDefault, retVal, size, strIniFilePath);
                return (liRet >= 1);
            }
    
    
            /// <summary>
            /// 获取ini配置文件中的整型值
            /// </summary>
            /// <param name="section">节名</param>
            /// <param name="key">键名</param>
            /// <param name="nDefault">默认值</param>
            /// <returns></returns>
            public int GetIniInt(string section, string key, int nDefault)
            {
                return GetPrivateProfileInt(section, key, nDefault, strIniFilePath);
            }
    
    
            /// <summary>
            /// 往ini配置文件写入字符串
            /// </summary>
            /// <param name="section">节名</param>
            /// <param name="key">键名</param>
            /// <param name="val">要写入的字符串</param>
            /// <returns>成功true,失败false</returns>
            public bool WriteIniString(string section, string key, string val)
            {
                long liRet = WritePrivateProfileString(section, key, val, strIniFilePath);
                return (liRet != 0);
            }
    
    
            /// <summary>
            /// 往ini配置文件写入整型数据
            /// </summary>
            /// <param name="section">节名</param>
            /// <param name="key">键名</param>
            /// <param name="val">要写入的数据</param>
            /// <returns>成功true,失败false</returns>
            public bool WriteIniInt(string section, string key, int val)
            {
                return WriteIniString(section, key, val.ToString());
            }
        }
    }
    

    读写操作:

            private void btn_读取_Click(object sender, EventArgs e)
            {
                IniFileHelper iniFileHelper = new IniFileHelper();
                StringBuilder sb = new StringBuilder(60);
                iniFileHelper.GetIniString("tokeninfo", "apiUrl", "", sb, sb.Capacity);
                string aaa = sb.ToString();
            }
    
            private void btn_写入_Click(object sender, EventArgs e)
            {
                IniFileHelper iniFileHelper = new IniFileHelper();
                iniFileHelper.WriteIniString("tokeninfo", "apiUrl", "newString");
                iniFileHelper.WriteIniString("tokeninfo", "apiUrl1", "newString1");
                iniFileHelper.WriteIniString("tokeninfo", "apiUrl2", "newString2");
            }

    展开全文
  • Winform 读写INI文件 简单例子
  • C# Winform读取ini文件

    2012-09-10 15:34:00
    5,读取ini文件 private void ReadIni() { StringBuilder temp = new StringBuilder(); GetPrivateProfileString("DataBase", "DBSource", "", temp, 255, path); string source = temp.ToString(); ...

    1,首先导入命名空间:

    using System.Runtime.InteropServices;

    2,声明API函数        

    [DllImport("kernel32")]        

    private static extern long WritePrivateProfileString(string section, string key, string val, string filePath);

    3,创建ini文件

    path = Application.StartupPath + "\\ClientCfg.ini";

    private void WriteIni()

    {            

      WritePrivateProfileString("DataBase", "DBSource", ".", path);            

      WritePrivateProfileString("DataBase", "DBPswd", "123456", path);

      WritePrivateProfileString("DataBase", "DBAcc", "sa", path);            

      WritePrivateProfileString("DataBase", "DBName", "Train", path);

    }

    4,声明API函数        

    [DllImport("kernel32")]        

    private static extern int GetPrivateProfileString(string section, string key, string def, StringBuilder retVal, int size, string filePath);

    5,读取ini文件

    private void ReadIni()        

    {            

    StringBuilder temp = new StringBuilder();            

    GetPrivateProfileString("DataBase", "DBSource", "", temp, 255, path);            

    string source = temp.ToString();            

    GetPrivateProfileString("DataBase", "DBPswd", "", temp, 255, path);           

    string pwd = temp.ToString();            

    GetPrivateProfileString("DataBase", "DBAcc", "", temp, 255, path);            

     string acc = temp.ToString();           

     GetPrivateProfileString("DataBase", "DBName", "", temp, 255, path);            

     string name = temp.ToString();

     connectionStr = "server=" + source + ";database=" + name + ";uid=" + acc + ";pwd=" + pwd + "";

    }

    转载于:https://www.cnblogs.com/txwm/archive/2012/09/10/2678831.html

    展开全文
  • C# winform读写ini文件

    千次阅读 2015-11-05 21:13:37
    C# winform读写ini文件

    INI文件是一种具有特定结构的文本文件,它的构成分为三部分,结构如下:

    [Section1]
    key 
    1 = value2
    key 
    1 = value2
    ……
    [Section2]
    key 
    1 = value1
    key 
    2 = value2
    ……


    文件由若干个段落(section)组成,每个段落又分成若干个键(key)和值(value)。Windows系统自带的Win32的API函数GetPrivateProfileString()和WritePrivateProfileString()分别实现了对INI文件的读写操作,他们位于kernel32.dll下。

    但是令人遗憾的是C#所使用的.NET框架下的公共类库并没有提供直接操作INI文件的类,所以唯一比较理想的方法就是调用API函数。

    然后,.Net框架下的类库是基于托管代码的,而API函数是基于非托管代码的,(在运行库的控制下执行的代码称作托管代码。相反,在运行库之外运行的代码称作非托管代码。)如何实现托管代码与非托管代码之间的操作呢?.Net框架的System.Runtime.InteropServices命名空间下提供各种各样支持COM interop及平台调用服务的成员,其中最重要的属性之一DllImportAttribute可以用来定义用于访问非托管API的平台调用方法,它提供了对从非托管DLL导出的函数进行调用所必需的信息。下面就来看一下如何实现C#与API函数的互操作。

    读操作:

    [DllImport("kernel32")]
    private static extern int GetPrivateProfileString(string section, string key, string defVal, StringBuilder retVal, int size, string filePath); 
    section:要读取的段落名
    key: 要读取的键
    defVal: 读取异常的情况下的缺省值
    retVal: key所对应的值,如果该key不存在则返回空值
    size: 值允许的大小
    filePath: INI文件的完整路径和文件名
    写操作:

    [DllImport("kernel32")] 
    private static extern long WritePrivateProfileString(string section, string key, string val, string filePath); 
    section: 要写入的段落名
    key: 要写入的键,如果该key存在则覆盖写入
    val: key所对应的值
    filePath: INI文件的完整路径和文件名
    这样,在就可以使用对他们的调用,用常规的方式定义一个名为IniFile类:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Runtime.InteropServices;
    using System.IO;
    
    namespace 测试
    {
        /// <summary>
        /// INI文件的操作类
        /// </summary>
        public class IniFile
        {
            public string Path;
    
            public IniFile(string path)
            {
                this.Path = path;
            }
    
            #region 声明读写INI文件的API函数
    
            [DllImport("kernel32")]
            private static extern long WritePrivateProfileString(string section, string key, string val, string filePath);
    
            [DllImport("kernel32")]
            private static extern int GetPrivateProfileString(string section, string key, string defVal, StringBuilder retVal, int size, string filePath);
    
            [DllImport("kernel32")]
            private static extern int GetPrivateProfileString(string section, string key, string defVal, Byte[] retVal, int size, string filePath);
    
            #endregion
    
            /// <summary>
            /// 写INI文件
            /// </summary>
            /// <param name="section">段落</param>
            /// <param name="key">键</param>
            /// <param name="iValue">值</param>
            public void IniWriteValue(string section, string key, string iValue)
            {
                WritePrivateProfileString(section, key, iValue, this.Path);
            }
    
            /// <summary>
            /// 读取INI文件
            /// </summary>
            /// <param name="section">段落</param>
            /// <param name="key">键</param>
            /// <returns>返回的键值</returns>
            public string IniReadValue(string section, string key)
            {
                StringBuilder temp = new StringBuilder(255);
    
                int i = GetPrivateProfileString(section, key, "", temp, 255, this.Path);
                return temp.ToString();
            }
    
            /// <summary>
            /// 读取INI文件
            /// </summary>
            /// <param name="Section">段,格式[]</param>
            /// <param name="Key">键</param>
            /// <returns>返回byte类型的section组或键值组</returns>
            public byte[] IniReadValues(string section, string key)
            {
                byte[] temp = new byte[255];
    
                int i = GetPrivateProfileString(section, key, "", temp, 255, this.Path);
                return temp;
            }
        }
    }

    程序在调用IniFile类时需要先实例化

    string path = Environment.CurrentDirectory + @"\Config.ini";  //指定ini文件的路径
    IniFile ini = new IniFile(path);
    string FpOrderNumber = ini.IniReadValue("SQL", "FpOrderNumber");//读取ini文件中键<span style="font-family: Arial, Helvetica, sans-serif;">FpOrderNumber的值</span><pre name="code" class="csharp" style="font-size: 13px; line-height: 19px;">ini.IniWriteValue("SQL", "FpOrderNumber", tsslMo.Text);//将tsslMo.Text的值写到键FpOrderNumber中去
    
    
    


    展开全文
  • c# winform demo 读取INI文件内容 读取配置文件中的内容。在网上找了很多,比较麻烦。此demo很简洁,但是有一个问题,ini文件中的第一个内容读不出来,从第二开始可以正常读写
  • winform 读写.ini 文件

    2017-05-17 19:24:11
    1、ini文件读写helper类 public class IniInfo { //调用API函数 [DllImport("kernel32")] private static extern bool WritePrivateProfileString(string section, string key, string val, str

    1、ini文件读写helper类

    public class IniInfo
        {
            //调用API函数
    
            [DllImport("kernel32")]
            private static extern bool WritePrivateProfileString(string section, string key, string val, string filePath);
            [DllImport("kernel32")]
            private static extern int GetPrivateProfileString(string section, string key, string def, StringBuilder retVal, int size, string filePath);
    
            /// <summary>
            /// 写如INI文件
            /// </summary>
            /// <param name="Section">主节点名称</param>
            /// <param name="Key">键名称</param>
            /// <param name="Value">键值</param>
            /// <param name="path">INI文件地址</param>
            public static void WriteIni(string Section, string Key, string Value, string path)
            {
                WritePrivateProfileString(Section, Key, Value, path);
            }
    
    
            /// <summary>
            /// 读取INI文件
            /// </summary>
            /// <param name="Section">主节点名称</param>
            /// <param name="Key">键名称</param>
            /// <param name="path">INI文件地址</param>
            /// <returns>键值</returns>
            public static string ReadIni(string Section, string Key, string path)
            {
                StringBuilder temp = new StringBuilder(255);
                int i = GetPrivateProfileString(Section, Key, "", temp, 255, path);
                return temp.ToString();
            }       
        }


    2、ini文件里面的存值格式



    3、调用ini文件类的参数

                    //读 read
                    string age = string.Empty;//年龄
                    string sex = string.Empty;//性别
                    string tel = string.Empty;//联系方式
                    age = IniInfo.ReadIni("Messages", "age", Application.StartupPath + "\\Config.ini");
                    sex = IniInfo.ReadIni("Messages", "sex", Application.StartupPath + "\\Config.ini");
                    tel = IniInfo.ReadIni("Messages", "tel", Application.StartupPath + "\\Config.ini");
    
                    //写 write
                    IniInfo.WriteIni("Messages2", "a", "0", Application.StartupPath + "\\Config.ini");
                    IniInfo.WriteIni("Messages2", "b", "1", Application.StartupPath + "\\Config.ini");
                    IniInfo.WriteIni("Messages2", "c", "2", Application.StartupPath + "\\Config.ini");




    展开全文
  • winform读写ini配置文件

    2011-07-14 11:29:27
     ReadIniFile file = new ReadIniFile(@"D:test.INI");  string inifilename = file.FileName();  bool isexist = file.ExistINIFile();  string strConn = "";  if (file.ExistINIFile())  {  iniserver = ...
  • 初次涉及ini读写,主要使用文件读写方法,对于专门进行ini的section、key、value等操作还需更进一步进行研究。
  • c# winform 读取ini配置文件信息内容

    千次阅读 2011-02-19 22:29:00
    public string inipath=Application.StartupPath+"//system.ini"; [DllImport("kernel32")] private static extern long WritePrivateProfileString(string section, string key, string val, string filePath); ...
  •  ReadIniFile file = new ReadIniFile(@"D:test.INI");  string inifilename = file.FileName();  bool isexist = file.ExistINIFile();  string strConn = "";  if (file.ExistINIFile())  {  iniserver = ...
  • winform读写.ini文件

    千次阅读 2012-04-13 09:28:25
    3、读取.ini StringBuilder temp = new StringBuilder(255); int i = GetPrivateProfileString("Setup","UserName","",temp,255, Application.StartupPath+"\\mcs.ini"); userno.Text = temp.ToString(); ...
  • 1 class WY_INI 2 { 3 static string IniFileName; 4 static char[] TrimChar = { ' ', '\t' }; 5 public string[] GetSects() 6 { 7 ...
  • C# winform读写ini文件 https://blog.csdn.net/source0573/article/details/49668079 c# winform程序读写ini配置文件 https://www.cnblogs.com/falcon-fei/p/9849868.html 背景:本来准备使用settings.settings...
  • C#winform 读写INI文件,源码,有演示介绍。(演示程序为vs2012)
  • usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.IO;usingSystem.Runtime....namespacedata_migration_desk.utils{//INI文件操作类classIniFileHelper{string ...
  • C#开发WinFormIni读写

    千次阅读 2018-12-05 09:12:43
    C#开发WinFormIni读写 文章目录C#开发WinFormIni读写前言工具类apiReadValue(string key)ReadValue(string key, string section)ReadValues()Write(string key, string value)Write(string section, string key,...
  • WinForm 读取配置文件(app.ini

    千次阅读 2012-10-19 15:58:39
    WinForm项目的Debug文件中创建一个app.ini文件。 app.ini文件事例 --------------------------------------------------------------------app.ini文件事例---------------------------------------------------...
  • WinForm C#写INI文件

    2016-09-21 10:17:29
    INI文件就是扩展名为"ini"的文件。 其一般形式如下: [section1] // 配置节  //键名 //键值  keyword1 = valuel  keyword2 = value2  ……  [section2]  keyword3 = value3  ke
  • winform c#写ini文件

    2009-12-07 10:40:00
    INI文件就是扩展名为"ini"的文件。 其一般形式如下: [section1] // 配置节 //键名 //键值 keyword1 = valuel keyword2 = value2 …… [section2] keyword3 = value3 keyword4 = value4 在Windows
  • winform ini文件问题

    2012-05-14 00:24:27
    我是一名初学者,看了许多的 ini文件读写的文章,但是看不懂,将代码写入总是出错,我不知道为什么?请大家帮帮我 最好给我一个详细的实例 下面的代码我想把默认的用户名和密码写进去,但是出错,写不下去了。...
  • 现在很多系统程序都通过配置文件来进行一些基本配置,INI就是其中一种,该资源包括INI的创建和读写权限功能,简单易懂没有连接数据库,使用winform
  • using System;using System.Runtime.InteropServices;using System.Text; namespace connectCMCC.Utils{ /// <summary> /// INI文件操作辅助类 /// </summary> public class IniFileUtil...
  • 今天要写一个小工具需要读取配置文件数据,准备用ini文件来实现方便使用者使用,在网上找了一下发现很多都是要自写或新建一个类来实现,有点麻烦,分享一个简单一点的方法: 首先要引用基本的using System.IO命名...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 582
精华内容 232
关键字:

winform读取ini文件