2017-05-18 106 views
-1

我有一個帶有文本內容的文件。 例如文件名= RandomText.txt從給出特定索引的文件中讀取文本

string content = "Lorem ipsum dolor sit amet, consectetur adipiscing elit"; 

我希望能夠提取內容給出了具體指標 例如得到指數5文本索引10

應返回「文字」

這裏是我的嘗試,其心不是做exctly我想要什麼..

int minRange = 1 
int maxRange = 10; 
int randomIndex = rnd.Next(minRange, maxRange); 
string text = File.ReadLines(RandomText.txt).Skip(randomIndex).First(); 

(我想跳過()在這裏用於行而不是索引,這不是我真正想要的。)

有什麼想法?

+0

請發佈有關文件內容的更多信息。你有沒有linebreaks? –

+0

不,只是連續的文本,沒有換行符 –

+0

如果你的起始索引是5,你從空格開始,所以結果是:''ipsu'' –

回答

0

File.ReadLines(RandomText.txt).Skip(會跳過許多行而不是多個字符。基本上你可以使用方法System.IO.File.ReadAllText。它會將整個文件內容作爲一個字符串返回。現在你可以從某個特定長度的某個起始索引獲取子串

int minRange = 1 
int maxRange = 10; 
Random rnd = new Random(DateTime.Now.Millisecond); 
int randomIndexStart = rnd.Next(minRange, maxRange); 
int randomIndexLength = rnd.Next(minRange, maxRange); 


string part = File.ReadAllText(@"C:\temp\read.txt").Substring(randomIndexStart, randomIndexLength);