我正在一个方法中执行一些参数验证,并在必要时抛出异常.我是否需要手动抛出这种类型的异常?只要调用者被包装在try..catch块中,无论手动检查是否到位,都会抛出类似的异常.
public static Int16 ToInt16(this byte[] value, int startIndex, bool isBigEndian) {
// are these exceptions necessary?
if (value == null) {
throw new ArgumentNullException("value");
}
if ((startIndex + 1) >= value.Length) {
throw new ArgumentOutOfRangeException("startIndex");
}
return (isBigEndian)
? (Int16)((value[startIndex] << 8) | value[startIndex + 1])
: (Int16)((value[startIndex + 1] << 8) | value[startIndex]);
}
Run Code Online (Sandbox Code Playgroud)
这是一种扩展方法,用于将数组中的2个字节转换为Int16,以便切换Big Endian或Little Endian转换.
我正在使用opc基础的.NET API编写opc客户端.
在样本中我只看到,项目的名称是硬编码的,如:
items[0] = new Opc.Da.Item();
items[0].ItemName = "blahblahblah";
Run Code Online (Sandbox Code Playgroud)
我想要的不是用手写下所有物品的名字.我想从服务器加载所有项目,例如树.我该怎么做?
有没有人知道将通过MS Exchange Server 2007 Web服务连接的开源PHP类(最好是BSD或MIT许可证).肥皂?
我正在寻找一个更高级别的类,它具有通过发送消息的功能.网络服务.
php exchange-server exchange-server-2007 exchangewebservices
如何以编程方式从.NET中的代码重新启动远程服务器上运行的COM +应用程序?
我有以下代码:
using (BinaryReader br = new BinaryReader(
File.Open(FILE_PATH, FileMode.Open, FileAccess.ReadWrite)))
{
int pos = 0;
int length = (int) br.BaseStream.Length;
while (pos < length)
{
b[pos] = br.ReadByte();
pos++;
}
pos = 0;
while (pos < length)
{
Console.WriteLine(Convert.ToString(b[pos]));
pos++;
}
}
Run Code Online (Sandbox Code Playgroud)
FILE_PATH是一个const字符串,包含要读取的二进制文件的路径.二进制文件是整数和字符的混合.整数是每个1个字节,每个字符作为2个字节写入文件.
例如,该文件包含以下数据:
1HELLO你是如何看待你的//等等
请注意:每个整数都与其后面的字符串相关联.所以1与"HELLO HOW ARE YOU"有关,45与"你在寻找伟大"等等有关.
现在写二进制文件(我不知道为什么,但我必须忍受这个),这样"1"只需要1个字节,而"H"(和其他字符)每个需要2个字节.
所以这是文件实际包含的内容:
0100480045 ......依此类推:
01是整数1的第一个字节0048是'H'的2个字节(H是十六进制的48)0045是'E'的2个字节(E = 0x45)
我希望我的控制台能够从这个文件中打印出人类可读的格式:我希望它打印出"1你好如何",然后"45你看起来很棒"等等......
我正在做的是正确的吗?有更简单/有效的方法吗?我的行Console.WriteLine(Convert.ToString(b [pos])); 什么都不做,但打印整数值,而不是我想要的实际字符.对于文件中的整数是可以的,但是如何读出字符呢?
任何帮助将非常感激.谢谢
我有以下场景.我有两个集合,其中一个缺少一些项目.什么样的集合类型最快找到丢失的项目并插入它们?
如何知道Exchange WebService URL,我有Exchange服务器版本2007,我正在尝试编写一个小型C#控制台应用程序来从Exchange服务器收集一些数据,但不知道什么是Exchange.WebServices Url.AutodiscoverUrl失败.
当我在Windows中打开命令窗口并使用imagemagick convert命令时:
转换/somedir/Garden.jpg /somedir/Garden.png
它按预期工作.
我要做的是使用C#执行与上面相同的命令.
我尝试使用System.Diagnostics.Process,但是没有创建foo.png.
我正在使用此代码:
var proc = new Process
{
StartInfo =
{
Arguments = string.Format("{0}Garden.jpg {1}Garden.png",
TEST_FILE_DIR,
TEST_FILE_DIR),
FileName = @"C:\xampp\ImageMagick-6.5.4-Q16\convert",
UseShellExecute = false,
CreateNoWindow = true,
RedirectStandardOutput = false,
RedirectStandardError = false
}
};
proc.Start();
Run Code Online (Sandbox Code Playgroud)
没有异常被抛出,但也没有写.png.
如何格式化这样的字符串:
string X = "'{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}','{10}','{11}','{12}','{13}'",????
Run Code Online (Sandbox Code Playgroud)
我记得我以前能够在末尾添加一个逗号,并指定要分配给{0},{1}等的实际数据.
有帮助吗?
我需要纠正字符串中不需要的字符.不需要的人物
"c"而不是"ç""i"而不是"ı""u"而不是"ü""g"而不是"ğ""o"而不是"ö""s"而不是"ş"
我写过这个方法.但它不起作用.
public string UrlCorrection(string text)
{
text = (text.ToLower()).Trim();
var length = text.Length;
char chr;
string newtext="";
for (int i = 0; i < length; i++)
{
chr = text[i];
switch (chr)
{
case 'ç':
newtext = text.Replace("ç", "c");
break;
case '?':
newtext = text.Replace("?", "i");
break;
case 'ü':
newtext = text.Replace("ü", "u");
break;
case '?':
newtext = text.Replace("?", "g");
break;
case 'ö':
newtext = text.Replace("ö", "o");
break;
case '?':
newtext = text.Replace("?", "s");
break;
default:
break;
} …Run Code Online (Sandbox Code Playgroud) c# ×8
.net ×4
asp.net ×1
binaryreader ×1
char ×1
collections ×1
com ×1
comadmin ×1
exception ×1
generics ×1
imagemagick ×1
opc ×1
php ×1