完整代码如下
public partial class MotorWave : System.Web.UI.Page
{
string Station;
string Line;
string Time;
string Motor_Order;//电机序号
double LeftZ;
double RightZ; private OracleConnection conn;
protected void Page_Load(object sender, EventArgs e)
{ Station = Request.QueryString["station"];
Line = Request.QueryString["line"];
Time = Request.QueryString["time"];
LZ = Convert.ToDouble(Request.QueryString["LZ"]);
RZ = Convert.ToDouble(Request.QueryString["RZ"]);
Motor_Order = Request.QueryString["motor_order"];
byte[] Buf = new byte[1024 * 1000];
ReadBlob(ref Buf);
//this.Pic();
this.Draw_Wave(ref Buf, Convert.ToInt32(Motor_Order)); }
......
int x;
int y;
for (int i = 0; i < Motor_Order; i++)
{
L_Start = BitConverter.ToInt32(Buffer, ptr);
ptr += 4; L_Stop = BitConverter.ToInt32(Buffer, ptr);
ptr += 4;
ptr += (L_Stop - L_Start) * 2; }
L_Start = BitConverter.ToInt32(Buffer, ptr);
L_Stop = BitConverter.ToInt32(Buffer, ptr + 4);
int Number_L = L_Stop - L_Start;//波形点数
ptr += 8;
Point[] DataPt_L = new Point[Number_L];
int[] Wave_L = new int[Number_L];
for (int n = 0; n < Number_L; n++)
{
ushort value = 0;
double outer;
value=(ushort)((0x7f&Buffer[2 * n + ptr])*128);
value+=Buffer[2 * n + 1+ ptr];
outer=value;
outer = (outer * 1.02 / 16368 - 0.01) * 100 - LZ;//减去零点////////////////////////
//去除飞点
if (outer > 39)
{
replace_point++;
if (replace_point > 10)
{
replace_point = 0;
last_outer = 39;
}
outer = last_outer;
}
else
last_outer = outer; //画波形
Ph.DrawCurve(Pen_left, DataPt_L);
ptr = 0;//偏移
for (int i = 0; i < 8; i++)
{
L_Start = BitConverter.ToInt32(Buffer, ptr);
ptr += 4; L_Stop = BitConverter.ToInt32(Buffer, ptr);
ptr += 4;
ptr += (L_Stop - L_Start) * 2; }
for (int i = 0; i < Motor_Order; i++)
{
R_Start = BitConverter.ToInt32(Buffer, ptr);
ptr += 4; R_Stop = BitConverter.ToInt32(Buffer, ptr);
ptr += 4;
ptr += (R_Stop - R_Start) * 2; }
////
R_Start= BitConverter.ToInt32(Buffer, ptr);
R_Stop = BitConverter.ToInt32(Buffer, ptr + 4);
int Number_R = R_Stop - R_Start;//波形点数
ptr += 8;
Point[] DataPt_R = new Point[Number_R];
int[] Wave_R = new int[Number_R];
double RightZ = Convert.ToDouble(Request.QueryString["RZ"]);
for (int n = 0; n < Number_R; n++)
{
ushort value = 0;
double outer;
value = (ushort)((0x7f & Buffer[2 * n + ptr]) * 128);
value += Buffer[2 * n + 1 + ptr];
outer = value;
outer = (outer * 1.02 / 16368 - 0.01) * 100 - RightZ;//减去零点///////////////////////////////////////////////////////////
//去除飞点
if (outer > 39)
{
replace_point++;
if (replace_point > 10)
{
replace_point = 0;
last_outer = 39;
}
outer = last_outer;
}
else
last_outer = outer;
但是我现在编译的时候总说输入字符串的格式不正确。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
行 34: LeftZ = Convert.ToDouble(Request.QueryString["LZ"]);异常详细信息: System.FormatException: 输入字符串的格式不正确。
public partial class MotorWave : System.Web.UI.Page
{
string Station;
string Line;
string Time;
string Motor_Order;//电机序号
double LeftZ;
double RightZ; private OracleConnection conn;
protected void Page_Load(object sender, EventArgs e)
{ Station = Request.QueryString["station"];
Line = Request.QueryString["line"];
Time = Request.QueryString["time"];
LZ = Convert.ToDouble(Request.QueryString["LZ"]);
RZ = Convert.ToDouble(Request.QueryString["RZ"]);
Motor_Order = Request.QueryString["motor_order"];
byte[] Buf = new byte[1024 * 1000];
ReadBlob(ref Buf);
//this.Pic();
this.Draw_Wave(ref Buf, Convert.ToInt32(Motor_Order)); }
......
int x;
int y;
for (int i = 0; i < Motor_Order; i++)
{
L_Start = BitConverter.ToInt32(Buffer, ptr);
ptr += 4; L_Stop = BitConverter.ToInt32(Buffer, ptr);
ptr += 4;
ptr += (L_Stop - L_Start) * 2; }
L_Start = BitConverter.ToInt32(Buffer, ptr);
L_Stop = BitConverter.ToInt32(Buffer, ptr + 4);
int Number_L = L_Stop - L_Start;//波形点数
ptr += 8;
Point[] DataPt_L = new Point[Number_L];
int[] Wave_L = new int[Number_L];
for (int n = 0; n < Number_L; n++)
{
ushort value = 0;
double outer;
value=(ushort)((0x7f&Buffer[2 * n + ptr])*128);
value+=Buffer[2 * n + 1+ ptr];
outer=value;
outer = (outer * 1.02 / 16368 - 0.01) * 100 - LZ;//减去零点////////////////////////
//去除飞点
if (outer > 39)
{
replace_point++;
if (replace_point > 10)
{
replace_point = 0;
last_outer = 39;
}
outer = last_outer;
}
else
last_outer = outer; //画波形
Ph.DrawCurve(Pen_left, DataPt_L);
ptr = 0;//偏移
for (int i = 0; i < 8; i++)
{
L_Start = BitConverter.ToInt32(Buffer, ptr);
ptr += 4; L_Stop = BitConverter.ToInt32(Buffer, ptr);
ptr += 4;
ptr += (L_Stop - L_Start) * 2; }
for (int i = 0; i < Motor_Order; i++)
{
R_Start = BitConverter.ToInt32(Buffer, ptr);
ptr += 4; R_Stop = BitConverter.ToInt32(Buffer, ptr);
ptr += 4;
ptr += (R_Stop - R_Start) * 2; }
////
R_Start= BitConverter.ToInt32(Buffer, ptr);
R_Stop = BitConverter.ToInt32(Buffer, ptr + 4);
int Number_R = R_Stop - R_Start;//波形点数
ptr += 8;
Point[] DataPt_R = new Point[Number_R];
int[] Wave_R = new int[Number_R];
double RightZ = Convert.ToDouble(Request.QueryString["RZ"]);
for (int n = 0; n < Number_R; n++)
{
ushort value = 0;
double outer;
value = (ushort)((0x7f & Buffer[2 * n + ptr]) * 128);
value += Buffer[2 * n + 1 + ptr];
outer = value;
outer = (outer * 1.02 / 16368 - 0.01) * 100 - RightZ;//减去零点///////////////////////////////////////////////////////////
//去除飞点
if (outer > 39)
{
replace_point++;
if (replace_point > 10)
{
replace_point = 0;
last_outer = 39;
}
outer = last_outer;
}
else
last_outer = outer;
但是我现在编译的时候总说输入字符串的格式不正确。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
行 34: LeftZ = Convert.ToDouble(Request.QueryString["LZ"]);异常详细信息: System.FormatException: 输入字符串的格式不正确。
解决方案 »
- 无法将类型“string”隐式转换为“System.Web.UI.WebControls.TextBox”
- 在ASP.NET中使用datalist绑定的动态图片如何使用jquery lightbox?
- 如何在脚本中控制当主表的网格中选择一行时,子表的网格中过滤显示相关的记录?主要是无刷新过滤
- 请教水晶报表错位问题,急!!!
- 读取图片的路径怎么写?
- 快帮我看看!!!!!!!!!!!!!
- asp.net website 调用 Js进行分页 数据补齐的问题 请帮助解决!
- 为什么我给repeater绑定数据 报‘未将对象引用设置到对象的实例’的错
- 权限实现的讨论~~~请斑竹帮忙!
- 单选按钮或复选按钮有一个白色的背景边(页面背是其他景色时,按钮有白色框),怎么也去不掉,谁有解决方法?
- 初学ASP.NET看啥书比较合适
- 请问各位关于基本类型转换的问题,从别的页面传递过来的参数,我将它的string型转换成double型!
{
LeftZ = Convert.ToDouble(Request.QueryString["LZ"].ToString());
}
判断一下看看
double LeftZ = 0.0;
if (Request.QueryString["LZ"] != null && Double.TryParse(Request.QueryString["LZ"].ToString(), out LeftZ))
{
LeftZ = Convert.ToDouble(Request.QueryString["LZ"].ToString());
}
LZ = Convert.ToDouble(Request.QueryString["LZ"]);
RZ = Convert.ToDouble(Request.QueryString["RZ"]);
怎么报错是
LeftZ = Convert.ToDouble(Request.QueryString["LZ"]);
没看到你怎么定义的LZ
就改成LeftZ了
反正用LeftZ或者LZ都不行
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
行 34: LeftZ = Convert.ToDouble(Request.QueryString["LZ"]); 异常详细信息: System.FormatException: 输入字符串的格式不正确。