Problem z plikiem i polskimi znakami

0

Witam wszystkich
Taki mały problemik (nie na wszystkich kompach występuje, platforma Framework 2, SharpDevelop).
Mam plik tekstowy z listą plików do importu. Niektóre pliki, w których nazwach są użyte polskie znaki diakrytyczne) są niewidoczne dla programu tj. funkcja File.Exists(param[1].Trim()) zwraca wynik - plik nie istniej. Co może być tego przyczyną ewentualnie jak temu zaradzić. Dodam, iż eksperymentowałem z różnym kodowaniem pliku tekstowego z listą.
Poniżej kawałek kodu.

FileStream config_file = new FileStream(openFileDialog1.FileName, FileMode.Open, FileAccess.Read);StreamReader czytaj = new StreamReader(config_file);
nr_p=0;
//inicjalizacja tablicy przechowuj?cej nazwy plkow
files=new string[ile_plikow];
if (ile_plikow==0)
{
pole.Text="Brak okre?lonych plików ?ród?owych"+ "\r\nSprawd? plik prelisty.";		
return;
}
do
{	
linia=czytaj.ReadLine();
if(linia!=null && linia!="")
{
//przeskocz komentarze
if(linia.Substring(0,1)=='#'.ToString())
{
continue;
}
param= linia.Split('>');
switch(param[0])
{
progressBar1.Maximum=Int32.Parse(param[1].Trim());
case "plik":
if (File.Exists(param[1].Trim()))
 {
 files[nr_p]=param[1].Trim();
nr_p++;
}
0

Zobacz czy deklaracja kodowania cos pomoze.

Zamien swoje:
StreamReader(config_file);

na:
StreamReader(config_file,System.Text.Encoding.Default);

albo pokombinuj innymi kodowaniami.

0

Wszystko jest pięknie i ładnie dopóki pliki nie znajdują się na dysku novellowym. Jakieś sugestie??

0

Jedna sugestia - pod Novellem nie uzywamy znakow narodowych w nazwach plikow i katalogow :]

A tak powaznie - mozesz miec czasem niezly problem z tymi znakami. Zakladajac ze Novell sam sobie nie zawsze radzi ze znakami narodowymi a co dopiero zewnetrzny 'klient'.

Niestety nie mam dostepu do stacji Novellowej wiec nawet poexperymentowac nie moge, aczkolwiek problem ciekawy i licze na "list z pola boju" ;)

0

List "z pola boju". Ponieważ czas wdrożenia projektu strasznie naglił, na rozwiązanie stricte programowe trochę go zabrakło. Rozwiązałem to sposobem zapisu pliku prelisty tj. kodowanie UTF-8 i odczyt z pliku z ustawioniem UTF-8, zainstalowany klient Novel 4.91 z ustawionym parametrem "Użyj kodowania UTF-8 i pakietów NCP". Dodatkowe spostrzeżenie (tylko w przypadku stacji Novellowej) - scieżka np: R:\pack\łoś.xls nie jest jednoznaczna ze scieżką: R:\pack\Łoś.xls (gdzie R to zmapowany dysk stacji Novellowej).
Może ktoś ma jakieś informacje o co w tym biega.

0

W Novellu rozróżniane są małe i duże litery w plikach (tak jak w *NIXach)?? Tak mi się wydaje - nie mam dostępu do Novella

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.