Strona 1 z 1
					
				C++, jak najłatwiej odczytać plik konfiguracyjny?
				: 10 grudnia 2007, 23:06
				autor: zbik
				Chciałbym napisać program który czyta taki normalny, linuksowy plik konfiguracyjny:
Kod: Zaznacz cały
# jakiś komentarz
zmienna1 = 7
zmienna2 = /var/lib/cośtam/
Czy jest jakaś gotowa funkcja/biblioteka, jakiś łatwy sposób żebym mógł odczytać taki plik *.conf i mieć w programie ustawione zmienne z tego pliku, czy muszę sam pisać funkcje która będzie czytać linijka po linijce, ignorować komentarze i wczytywać jakoś te zmienne?
Takie pliki konfiguracyjne mają ujednoliconą składnię i wiele programów ich używa, wydaje mi się że powinny być jakieś gotowe narzędzia ułatwiające używanie tych plików w programach.
 
			 
			
					
				
				: 11 grudnia 2007, 06:50
				autor: Kaka'
				Ostatnio sam zainteresowałem się odczytywaniem linijek z pliku. Jak na razie korzystam z fstream (poczytaj na cplusplus.com), choć pewnie jest prostszy sposób... 
Pozdrawiam.
			 
			
					
				
				: 11 grudnia 2007, 12:53
				autor: Immortal
				Napisać takie odczytywanie to nie jest specjalny problem. Dobrze jest użyć jakiegoś strumiania. Może być jak kolega 
Kaka' napisał fstream/istream. Jeśli będziesz miał plik zapisany tak jak napisałeś czyli:
to masz problem z głowy. Jeśli zaś 
To już musisz dołożyć jeszcze jedną pentelkę 

 Jeśli chcesz czytać od słowa do słowa to używasz zwykłego operatora >>. On czyta do białego znaku. Jeśli zaś chcesz czytać po znaku to możesz użyć funkcji get() (poczytaj np o typie std::istream). O ile pamiętam jest tam jeszcze funkcja getline() która w połączeniu ze std::string pozwoli Ci to napisać bardzo szybko i sprawnie 

 
			 
			
					
				
				: 08 stycznia 2008, 15:54
				autor: db
				Kaka' pisze:Ostatnio sam zainteresowałem się odczytywaniem linijek z pliku. Jak na razie korzystam z fstream (poczytaj na cplusplus.com), choć pewnie jest prostszy sposób... 
Co ma do tego fstream?
http://www.adp-gmbh.ch/cpp/config_file.html -- całkiem przyjemny przykład takiej klasy. Google-code, koders.com mają multum innych przykładów.
 
			 
			
					
				
				: 08 stycznia 2008, 18:07
				autor: grzesiek
				Kiedyś pamiętam pisałem coś takiego, wtedy szukałem czegoś takiego w GLib, jest tam jakiś perser ale jego działanie jest troszkie nakierowane np na gtk.rc, najlepiej samemu to napisac, być może teraz jest to juz bardziej rozwiniete.
tu masz coś takiego
http://library.gnome.org/devel/glib/uns ... arser.html 
			 
			
					
				
				: 09 stycznia 2008, 11:45
				autor: wojtekz_
				Podejrzewam, że co drugi program w Debianie ma taką "bibliotekę". Jest to tak trywialne, że chyba nie warto specjalnie szukać, tylko sobie samemu napisać. Powinno zająć 15 minut ;-)
Pozdrawiam