Reputation: 399
I'm trying to read 1000s of textfiles from a server. (Using c#, winforms)
The problem is that I'm getting 2 errors which I don't know why they appear.
Error 1) "} Expected" 2) "Type or namespace definition":
For error 1, I see a } to close the method so why does it appear. Also for error 2, everything is in the namespace, so why is it appearing?
Code:
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{ // Error1
public static void ProcessAllFilesUnderDirectory(string topLevelDirectory, string searchMask, Action<string> processFile)
{
var files = Directory.EnumerateFiles(topLevelDirectory, searchMask, SearchOption.AllDirectories);
foreach (var file in files)
processFile(file);
}
private static void ProcessAFile(string fileName)
{
var lines = File.ReadAllLines(fileName);
// perform processing.
}
public static void Main(params string[] args)
{
ProcessAllFilesUnderDirectory(@"\camis01srfs04\DATA\Stats Analysis Project\Sobeys Stats\Atlantic", "*.txt", ProcessAFile);
}
}
}
}//Error 2
Upvotes: 1
Views: 90
Reputation: 125630
You can't place one method within another.
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{ // Error1
}
public static void ProcessAllFilesUnderDirectory(string topLevelDirectory, string searchMask, Action<string> processFile)
{
var files = Directory.EnumerateFiles(topLevelDirectory, searchMask, SearchOption.AllDirectories);
foreach (var file in files)
processFile(file);
}
private static void ProcessAFile(string fileName)
{
var lines = File.ReadAllLines(fileName);
// perform processing.
}
public static void Main(params string[] args)
{
ProcessAllFilesUnderDirectory(@"\camis01srfs04\DATA\Stats Analysis Project\Sobeys Stats\Atlantic", "*.txt", ProcessAFile);
}
}
}//Error 2
Upvotes: 8