.NET- ja suljetut asiakirjat (Suomi (Finnish))

.NET- ja suljetut asiakirjat

Friday, 20 February 2004

//

Less than a minute

OK, voiko kukaan selittää, miksi voinM SK1t tarkastaa nimenomaisesti, voinko lukkoa asiakirjan ennen kuin luen sen . FileSystemWatcher odottamaan, että asiakirjat laaditaan luetteloon ennen kuin se käynnistetään. - on hyvä, mutta ei ole mitään helppoa tarkistaa, onko asiakirja readable before starting to read. FileStream ja kiinnittää virhettä, joka se heittelee, kun asiakirja on suljettu toisella prosessilla...kuten niin... mutta tämä ei todellakaan tunnu asianmukaiselta 'Ihmettelen ajatusta poikkeusten käyttämisestä M SK4joiden käyttö on myös todella hidastaMSC5 tällaisen tehtävän osaltaMST6miksi eiMstK7t FileStreamM stk8Kyllätkö lukea lukkien tarkastelua ennen kuin asiakirjan avaamistaMStk9

        private static int m_ReadAttempts = 0;
        private string  ReadFileFromDisk(string filePath)
        {
            try
            {
                if(!File.Exists(filePath))
                {
                    MessageBox.Show("Sorry, but the file specified " + Environment.NewLine + filePath + Environment.NewLine + "Cannot be found");
                    return string.Empty;
                }
            using(FileStream fs = new FileStream(filePath,FileMode.Open,FileAccess.Read,FileShare.Read))
                {
                        using(StreamReader sr = new StreamReader(fs)) 
                        {
                            string tmpStr = sr.ReadToEnd();
                            sr.Close();
                            m_ReadAttempts =0;
                            return tmpStr;
                        }
                
                }        
            }
            catch(IOException ex)
            {
                    if(m_ReadAttempts < 10)
                {
                    Thread.Sleep(500);
                    m_ReadAttempts++;
                    return ReadFileFromDisk(filePath);
                }
                else
                {
                    throw ex;
                }
            }
        }
Finding related posts...
logo

© 2026 Scott Galloway — Unlicense — All content and source code on this site is free to use, copy, modify, and sell.