马上加入,结交更多好友,共享更多资料,让你轻松玩转电力研学社区!
您需要 登录 才可以下载或查看,没有账号?立即加入
×
这是我写的一段小代码,就是调用BPA对指定的.dat文件计算一次潮流,代码如下
% @4 {( f! L3 l1 busing System;
" i; a4 {; C1 |+ ^2 B3 Wusing System.Collections.Generic;
3 ^' P/ Z- h' P* Yusing System.Text;7 C, \8 ?* W- ]9 Q. e
using System.Diagnostics;
' F% _& b" ~ ]- y
* Z( ~9 H& u( N7 x, w7 A
! n& O" p! s2 [, e8 z! C8 a8 Ynamespace 调用BPA
% p8 z& a* |" \/ }; Q/ `) J{
2 w5 U0 _7 f- _4 j, n class Program
( _2 Y) u3 b- w6 X |+ t' e {
w, ~6 A* i! {4 e, }5 P public class powerflow
- h3 [4 L& L9 q. |" g4 i {, y; v+ E1 z% S3 h& ^# y% P5 E
public void powerflow1(string BPApath, string BPAdatapath) //BPApath 为BPA程序的存放路径,BPAdatapath为.dat数据文件的路径
1 x! E" P9 c8 f& q6 K# i {
- z" L# G1 G; t G0 |5 G0 M5 g Process dyBPA = new Process();% f0 S5 ~) Y' x* L" ?
dyBPA.StartInfo.FileName = BPApath + "pfnt.exe";
8 q2 D8 v( C: m( g7 r dyBPA.StartInfo.Arguments = BPAdatapath;( x' b6 c' J; b
dyBPA.StartInfo.UseShellExecute = false;2 }0 |- h+ {9 `; \, {
dyBPA.StartInfo.RedirectStandardInput = true;
6 R% A3 h6 \: ]1 A* a. G dyBPA.StartInfo.RedirectStandardOutput = true;: T& ]9 Q* C5 M5 a" z- Z8 B6 ]+ j
dyBPA.StartInfo.CreateNoWindow = false;7 q) B5 d4 F" M- L, {; O3 Y
dyBPA.StartInfo.WorkingDirectory = BPApath.Substring(0,BPApath.Length-1);
s' D& K2 f' J; I. J. m dyBPA.Start();3 f2 D4 R; L1 E6 {0 j0 w. P
string output = dyBPA.StandardOutput.ReadToEnd();
/ e% t/ R" b- c m" W dyBPA.Close();
( `- K7 t2 q# T& u * T: ]: t) S+ C# T
8 Q- d0 Y/ y+ J0 n3 n J* ]3 j }2 }1 z4 t5 n; t
}; \6 Q- L2 e T
static void Main(string[] args)
/ \3 I$ O: H3 z5 ? {
8 D0 {9 O# x- X- Y& w powerflow calculate = new powerflow();. k& M! C# C( N$ Z
calculate.powerflow1(@"C:\psap32\psaw", @"E:\广东电网充裕度评估系统\童—潮流计算程序\013bpa");
1 _- Z B* [6 Y3 K" B& O/ q( q( z5 k }
9 \) E, Y: K. E: T }
, q5 j4 F2 g4 G2 I}
* W9 I( n) E6 J$ v8 L* E/ z由于本人是刚刚学习,可能上面代码有许多错误,还请高手赐教~~~小弟不胜感激 |