mrq*_*901 5 .net c# random byte list
我正在尝试用随机字节填充缓冲区.缓冲区定义为字节列表.这是我想保留的东西.这是定义:
namespace NameofProject
{
public partial class Form1 : Form
{
List<byte> buff = new List<byte>();
}
}
Run Code Online (Sandbox Code Playgroud)
我的第一次尝试是
public static void RandomFillBuffer()
{
Random rnd = new Random();
rnd.NextBytes(buff);
}
Run Code Online (Sandbox Code Playgroud)
然而,这给buff带来了这样的错误:非静态字段,方法或属性'Form1.buff'需要对象引用
然后我刚刚删除了"静态"这个词(我不确定这是否属实)并且它变成了"public void RandomFillBuffer()",但是这次我得到了buff的这个错误:参数1:无法从'System转换. Collections.Generic.List'到'byte []'
如果它们有意义,我会感谢任何帮助解决2个错误中的任何一个.
你得到那个问题因为NextBytes()需要一个数组,但是你试图通过一个数组List<>.解决它的一种方法是将您更改List<>为数组:
byte[] buff = new byte[someSize];
Run Code Online (Sandbox Code Playgroud)
你将不得不弄清楚someSize应该是什么(这取决于你).如果没有尺寸,你就无法填充.否则,怎么知道什么时候完成?
您遇到的问题是 NextBytes 填充 array[] 而不是列表。您需要定义一个数组及其大小的索引
// Put random bytes into this array.
byte[] array = new byte[8];
// Fill array with random bytes.
Random random = new Random();
random.NextBytes(array);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
609 次 |
| 最近记录: |