该代码(部分)是用来识别DMO文件的内容并重新排列有效的数据并导出的小程序,在粗体字部分报错,提示“应有{”。
Private Sub ProcessDmo(dmo As String, dmoName As String)
Dim dmoProcessor As DmoProcessor = New DmoProcessor(dmo)
Dim value As String = "Measurand;MeasurementPlan;MeasurementTime;ProdNo;X;Y;Z;N"
Dim stringBuilder As StringBuilder = New StringBuilder()
stringBuilder.AppendLine(value)
Dim dateTime As String = dmoProcessor.GetDateTime()
Me.WriteDebug(String.Format("DMO DateTime: {0}", dateTime))
Dim prodNumber As String = dmoProcessor.GetProdNumber()
Me.WriteDebug(String.Format("DMO Production number: {0}", prodNumber))
Dim array As String() = Regex.Split(dmo, "OUTPUT/FA")
Dim num As Integer = 1
Dim array2 As String() = array
For i As Integer = 0 To array2.Length - 1
Dim input As String = array2(i)
Dim value2 As String = Regex.Match(input, "FA((\w+))", RegexOptions.IgnoreCase).Groups(1).Value
Dim value3 As String = Regex.Match(input, "TA.+PROFP,([-.\d]+),", RegexOptions.IgnoreCase).Groups(1).Value
Dim value4 As String = Regex.Match(input, "TA.+XAXIS,([-.\d]+),", RegexOptions.IgnoreCase).Groups(1).Value
Dim value5 As String = Regex.Match(input, "TA.+YAXIS,([-.\d]+),", RegexOptions.IgnoreCase).Groups(1).Value
Dim value6 As String = Regex.Match(input, "TA.+ZAXIS,([-.\d]+),", RegexOptions.IgnoreCase).Groups(1).Value
Dim flag As Boolean = value2 <> String.Empty
If flag Then
** stringBuilder.AppendLine(String.Format("{0};MeasurementPlan;{1};{2};{3};{4};{5};{6}", New Object()() = {value2,dateTime, prodNumber, value4, value5, value6, value3})) **
num += 1
End If
Next
Me.WriteDebug(String.Format("During processing {0} found {1} point(s)", dmoName, num))
Me.WriteDebug("Finished.")
Dim text As String = Path.Combine(Application.StartupPath, String.Format("{0}.csv", Path.GetFileName(dmoName)))
Me.WriteData(stringBuilder.ToString(), text)
Clipboard.SetText(text)
Dim checked As Boolean = Me.uxChkOpenCsv.Checked
If checked Then
Process.Start(text)
End If
End Sub