2012-09-24 32 views
0

为什么惯于这项工作,我想手机格式为标准格式的字符串作为手机LINQ查询

Dim Patient = From line In System.IO.File.ReadAllLines("K:\PAT02.txt") 
Select New With { _ 
Key .PatientID = line.substring(0,7).trim, _ 
.FirstName = line.substring(7,11).trim, _ 
.MiddleName = line.substring(18,1).trim, _ 
.LastName = line.substring(19,15).trim, _ 
.Home = (String.Format("{0:(###)###-####}", line.substring(112,10).trim)), _   
} 
+2

什么问题?错误信息?例外? –

+0

这可能重复:http://stackoverflow.com/questions/188510/how-to-format-a-string-as-a-telephone-number-in-c-sharp这里的标题是提到Linq,但实际上Linq在所提及的问题中完全不涉及 – Wasp

回答

0

你必须在你的New With块的末尾一个额外的逗号,删除它,你的代码将被编译。

关于你的电话号码的问题,您使用的数字格式,所以你必须通过一个数字来String.Format方法:

.Home = String.Format("{0:(###)###-####}", CLng(line.substring(112,10).trim)) 
+0

完成并且不起作用,那么该表达式实际上是该行的缩减版本.Home =(String.Format(“{0:(###)### - ## ##)“,line.substring(112,10).trim))_ inly返回line.substring(112,10).trim)的内容) –

+0

定义”不起作用“。至少它现在编译;-) –

+0

我编辑了我的答案,以帮助您的电话号码部分。 –