开发者

Read from a file that changes everyday in C#

I want to automate a program开发者_如何学Go that reads a file, processes it and then write it to a new file. The problem is that a new file comes in every day, and the contents are similar, the input file and output file names will change daily. The file name will be in the following format: SAPHR_Joiners_20110323. As you can see the first part of the name will be constant but the date will be unique...... How would i be able to do this?

Thanks alot guys


If you want to read the latest file in a folder, you could query the created date, using System.IO.File.GetCreationTime

In code:

string myFile = 
            Directory.GetFiles(@"C:\Temp")
            .OrderBy<String, DateTime>(file => File.GetCreationTime(file))
            .First();

However, if you know that the file-name will follow a strict naming convention, then it is better to access the file by generating the file name as other answers suggest.


Can't you just generate the filename dynamically in your program, and then open the corresponding file? So something like this:

string filename = "SAPHR_Joiners_" + DateTime.Now.ToString("yyyyMMdd");
string[] filecontents = File.ReadAllLines( filename );


Use a FileSystemWatcher class to look for new incoming files if you want prompt respone, otherwise just locate the file based on a current date. If you have further problems, let us know.


Back the days of VB6 one technique that still is in use this days is the folder monitoring

You keep checking if a folder has files, every x in x minutes, or in your case, every day at XX hours for example.

and you could create a Service from your program and that will insure that it will run every time (as long as the machine is on) :)

Those days, in VB6, we didn't had so much as you have today, so, for watching a folder for specific file types (or anything at all) *.* you can use the System.IO.FIleSystemWatcher (example in that page), and to process the file, just use System.IO.TextReader for example

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜