我确定我是否知道我可能能够找到答案的正确术语......但我的Visual Studio VB技能有些偏差。
我的VB运行dos批处理,将给定IP地址的当前登录用户的DOMAIN \ USERNAME转储到文本文件(GETUSER.txt)
我需要对此字符串(取自上面创建的txt文件)进行操作,创建两个字符串,一个是DOMAIN,一个是USERNAME,完全删除\。
问题是我的工作环境包含多个域和不同的用户名样式。唯一的常量是\分隔DOMAIN和USERNAME。
我查看了REPLACE和各种STRING函数,但我在苦苦挣扎。
以下是在对话框中单击“确定”(输入IP后)时运行的VB代码部分。 “MAIN”是其中包含Public VAR的父窗口的名称。
Public Shared IPADDRESS As String
Public Shared USERNAME As String
^是使用的公共VARS。
Dim GETUSER As New ProcessStartInfo("TOOLS\GETUSER.bat")
Dim fileReader As System.IO.StreamReader
Dim stringReader As String
MAIN.IPADDRESS = NEW_IP_ADD.Text
MAIN.IP_DISPLAY.Text = MAIN.IPADDRESS
GETUSER.WindowStyle = ProcessWindowStyle.Hidden
GETUSER.Arguments = MAIN.IPADDRESS
Process.Start(GETUSER)
fileReader =
My.Computer.FileSystem.OpenTextFileReader("TOOLS\GETUSER.txt")
stringReader = fileReader.ReadLine()
MAIN.USERNAME = stringReader
MAIN.USER_NAME.Text = MAIN.USERNAME
我希望这是有道理的,并且不可能破译......我期待你的回应....
请记住,我在VB和Visual Studio中都是新手......还有......如果人们发布链接到知道我可以得到答案的地方,或者帮我处理功能名称,我会非常高兴或任何旨在帮助我自己找到答案的东西......这是学习的唯一方法......我只是觉得我需要在正确的方向上轻推......
干杯,
添
答案 0 :(得分:4)
听起来你要做的就是拆分字符串。而且,方便的是Split
方法:
返回包含子字符串...的字符串数组
所以你要做的事情是:
Dim parts = MAIN.USERNAME.Split("\"C)
Dim domain = parts(0)
Dim userNameWithoutDOmain = parts(1)