Code: Detail

Especializações:Asp.net, Ajax, C#, Visual Basic.net, Wcf, XML FrameWork .net 1.1, 2.0 e 4.0, OO, Design Patterns Arquitetura SOA, DDD, MVP e MVVM Html, Css, JavaScript Sql Server 2000, 2005 e 2008 Oracle 8i e 9i Asp3, Visual Basic 6 e COM+

C# - (Portuguese)

Manipulação de arquivo ini com c#

Scripts para gravação e leitura de informações em um arquivo INI.

Last update: 28/01/2014
C#       
 
N/A
N/A
N/A
5
 

//Classe com rotinas Write e Read
//-------------------------------

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using System.Runtime.InteropServices;
using System.IO;
using System.Configuration;

namespace Helpers
{
    public static class INI
    {
        [DllImport("kernel32.dll", CharSet = CharSet.Unicode, SetLastError = true)]
        [return: MarshalAs(UnmanagedType.Bool)]
        static extern bool WritePrivateProfileString(string lpAppName,
           string lpKeyName, string lpString, string lpFileName);

       public static string LerINI(string fileNameAndPath, string key)
       {

           if (System.IO.File.Exists(@fileNameAndPath) == false)
               return "";

           string[] texto = File.ReadAllLines(@fileNameAndPath);

            for (int linhas = 0; linhas < texto.Length; linhas++)
            {
                if (texto[linhas].Trim() == key && texto.Length - 1 > linhas)
                    return texto[linhas + 1].Trim();
            }

            return string.Empty;

       }
       public static void WriteINI(string fileNameAndPath, string section, string key, string text)
       {
           WritePrivateProfileString(section, key, text, fileNameAndPath);
       }

    }
}

//Utilizando
//-----------

        private void Form1_Load(object sender, EventArgs e)
        {
             string _status = string.Empty;
            
            //Leitura
            _status = Helpers.INI.LerINI(@"c:\temp\arquivo.ini","[STATUS_ATUALIZACAO]");

            //Gravação
            Helpers.INI.WriteINI(@"c:\temp\arquivo.ini","STATUS_ATUALIZACAO","STATUS","AGUARDANDO");

        }



Source:
 
Users who have marked this routine as a favorite
 
 
10/03/2015 19:30:58
Muito bom...

18/09/2014 16:18:15
OLA Jose Barreto, eu nao entendi muito bem o que precisa, seria possivel postar um conteudo parecido com o teu ini e descrever o que precisa?

17/09/2014 09:33:13
Bom dia, cara no seu codigo voce pega somente uma unica linha por vez, pegando a linha pelo linha + algum numero.

Se eu quiser ler ate chegar ao próximo bloco [] do .ini como eu faço?

no meu caso vou usar o .ini para pega uma conexão de dados inteira e setar no meu app.config

01/08/2014 12:50:58
Opa, que bom que gostou.

Se tiver algum script que queira compartilhar, se cadastre no site e compartilhe.

01/08/2014 09:58:31
cara muito bom...
valeu

 
The site ti4fun is not responsible for the content on sites for which you have external links

Articles, routines, tips, forums, blogs or any other content posted on ti4fun site is not tested and not validated, so you should test and validate any information collected on the ti4fun site before applying it to final use environment, such as example, production. the TI4FUN site is not responsible for quality or for any damages, direct, indirect or consequential, from use of any content posted by the authors in the site.

All content published on the ti4fun site is the responsibility of the author and do not necessarily express the views of the site ti4fun and its employees.