本文整理汇总了C#中Internal.ReadByte方法的典型用法代码示例。如果您正苦于以下问题:C# Internal.ReadByte方法的具体用法?C# Internal.ReadByte怎么用?C# Internal.ReadByte使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Internal
的用法示例。
在下文中一共展示了Internal.ReadByte方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ParseHttpRequestHeader
int ParseHttpRequestHeader(Internal.RecvIO recvIO)
{
//start from pos0
int readpos = 0;
int lim = recvIO.BytesTransferred - 1;
int i = 0;
for (; i <= lim; ++i)
{
//just read
if (recvIO.ReadByte(i) == '\r' &&
recvIO.ReadByte(i + 1) == '\n')
{
//each line
//translate
if (i - readpos < 512)
{
//copy
recvIO.CopyTo(readpos, tmpReadBuffer, i - readpos);
//translate
string line = Encoding.UTF8.GetString(tmpReadBuffer, 0, i - readpos);
readpos = i + 2;
i++; //skip \n
//translate header ***
if (line == "")
{
//complete http header
parseState = HttpParsingState.Body;
return readpos;
}
else
{
//parse header line
AddReqHeader(line);
}
}
else
{
//just skip?
//skip too long line
readpos = i + 2;
i++; //skip \n
}
}
}
return readpos;
}
示例2: ReadRDATA
internal override void ReadRDATA(Internal.ByteReader reader)
{
// The format of the data within a DNS TXT record is one or more
// strings, packed together in memory without any intervening gaps
// or padding bytes for word alignment.
//
// The format of each constituent string within the DNS TXT record is
// a single length byte, followed by 0-255 bytes of text data.
// TXT-DATA strings are not guaranteed to consist purely of ASCII printable
// characters though this is usually the case.
List<Datagram> strings = new List<Datagram>();
for (int total = 0; total < Base.RDLENGTH; )
{
byte length = reader.ReadByte();
if (length > 0)
{
if (total + length >= Base.RDLENGTH)
throw new InvalidResponseException(
"Invalid length byte in TXT record: String data would exceed RDLENGTH.");
strings.Add(reader.ReadBytes(length));
}
total += (length + 1);
}
Strings = strings.ToArray();
}