用套接字读取和解析美国的州
和其他流一样,也可以用流操作读取和解析套接字.
打开到含有文字数据的服务器的连接.
In[1]:=

socket = SocketConnect["http://exampledata.wolfram.com"]
Out[1]=

写一行命令,其中包括一个向含有所有美国的州的文本文件发出 GET 请求的命令.
In[2]:=

WriteLine[socket, "GET /50states.txt HTTP/1.0 \n"]
读取响应的第一行.
In[3]:=

ReadLine[socket]
Out[3]=

读取剩下的所有行.
In[4]:=

output = ReadString[socket];
检查字符串的中间部分,查看以新行分隔的州的列表.
In[5]:=

StringTake[output, {277, 347}]
Out[5]=

用 SemanticImportString 对结果进行解析,删除无法解析的元素.
In[6]:=

states = DeleteMissing[SemanticImportString[output]]
Out[6]=

检查是否所有的州都包含在内.
In[7]:=

Equal[Length[states],
Length[EntityList[
EntityClass["AdministrativeDivision", "USStatesAllStates"]]]]
Out[7]=

关闭流.
In[8]:=

Close[socket]