Hi,
I am trying the following codes for reading last 2 lines of a file. But I am getting some errors like:
a)The best overloaded method match for
'System.IO.Stream.Read(byte[], int, int)' has some invalid
arguments
b)Argument '2': cannot convert from 'long' to 'int'
byte[] buffer = new byte[1024];
using (Stream s = File.OpenRead(@"C:\Msg.txt"))
{
if (s.Length < buffer.Length)
{
buffer = new byte[s.Length];
}
s.Read(buffer, s.Length - buffer.Length, buffer.Length);
}
Array.Reverse(buffer);
StringBuilder sb = new StringBuilder();
for (int i = 0, count = 1; i < buffer.Length; i++)
{
if (buffer == (byte)'\n' && buffer[i + 1] == (byte)'\r') count++;
if (count == 2) break;
sb.Insert(0, buffer);
}
How can I resolve the above errors?
Any help much appreciated.
Thanks.
I am trying the following codes for reading last 2 lines of a file. But I am getting some errors like:
a)The best overloaded method match for
'System.IO.Stream.Read(byte[], int, int)' has some invalid
arguments
b)Argument '2': cannot convert from 'long' to 'int'
byte[] buffer = new byte[1024];
using (Stream s = File.OpenRead(@"C:\Msg.txt"))
{
if (s.Length < buffer.Length)
{
buffer = new byte[s.Length];
}
s.Read(buffer, s.Length - buffer.Length, buffer.Length);
}
Array.Reverse(buffer);
StringBuilder sb = new StringBuilder();
for (int i = 0, count = 1; i < buffer.Length; i++)
{
if (buffer == (byte)'\n' && buffer[i + 1] == (byte)'\r') count++;
if (count == 2) break;
sb.Insert(0, buffer);
}
How can I resolve the above errors?
Any help much appreciated.
Thanks.