스트림에 확장 방법 bool StartsWith(string message)
을 쓰고 싶습니다. 가장 효율적인 방법은 무엇입니까? 이 같은 뭔가스트림의 확장 방법으로 시작합니다.
1
A
답변
2
시작 ...
public static bool StartsWith(Stream stream this, string value)
{
using(reader = new StreamReader(stream))
{
string str = reader.ReadToEnd();
return str.StartsWith(value);
}
}
가 그럼 난 당신을위한 연습으로이 떠날거야 ... 최적화,
StreamReader
는 작은에서 스트림을 읽을 수 있도록 다양한
Read 방법이있다 보다 효율적인 결과를 위해 '덩어리'. 물론
Stream
자체가 데이터가 있다는 의미는 아닙니다의
+2
'StreamReader 사용하기 '는 독자가 폐기되었을 때 스트림을 닫을 것이기 때문에 좋은 생각이 아닙니다. – ChrisWue
1
static bool StartsWith(this Stream stream, string value, Encoding encoding, out string actualValue)
{
if (stream == null) { throw new ArgumentNullException("stream"); }
if (value == null) { throw new ArgumentNullException("value"); }
if (encoding == null) { throw new ArgumentNullException("encoding"); }
stream.Seek(0L, SeekOrigin.Begin);
int count = encoding.GetByteCount(value);
byte[] buffer = new byte[count];
int read = stream.Read(buffer, 0, count);
actualValue = encoding.GetString(buffer, 0, read);
return value == actualValue;
}
문자열 표현으로 복호입니다. 스트림이 확실하다면 위의 확장자를 사용할 수 있습니다.
관련 문제
- 1. 제품 구독을 확장 가능한 방법으로 설정 하시겠습니까?
- 2. putExtra없이 ListActivity을 시작합니다.
- 3. 스트림의 상태를 리셋
- 4. 이진 스트림의 엔트로피 인코딩
- 5. 스칼라에서 스트림의 사용 사례
- 6. AudioTrack 스트림의 알림 메시지
- 7. 보기와 스트림의 차이점은 무엇입니까?
- 8. 스트림의 뷰와 비교하기
- 9. 기본 스트림의 처리를 피하십시오.
- 10. VB.NET에서 스트림의 이미지 오버레이
- 11. 스트림의 장점/단점
- 12. 스트림의 이야기는이 응용 프로그램
- 13. 네트워크 스트림의 추가 바이트
- 14. 스트림의 리스너를 IObservable로 변환
- 15. RSS 스트림의 애드 센스
- 16. 비트 스트림의 비트 순서
- 17. 스트림의 여러 JSON 객체
- 18. 스트림의 단어 계산하기
- 19. 스트림의 불완전한 데이터
- 20. @ManyToMany LazyInitializationException을 시작합니다.
- 21. 바로 가기 활동을 시작합니다
- 22. 고유 한 확장 방법으로 객체를 null로 지정할 수 있습니까?
- 23. Vim에서 텍스트를 "확장"하여 좋은 방법으로 읽는 방법?
- 24. 이 확장 방법을 좀 더 일반적인 방법으로 만들 수 있습니까?
- 25. VSHost.exe가 VS2010에서 계속 시작합니다.
- 26. $ (this) 대상이있는 Selector로 시작합니다.
- 27. runQueryOnBackgroundThread를 묻는 필터를 시작합니다.
- 28. Drupal : Ubecart .. 사용하기 시작합니다.
- 29. SamsungApps Intent를 시작합니다.
- 30. Java가 스레드를 동시에 시작합니다.
먼저 더 구체적인 내용이 필요합니다. 스트림의 확장명을 http://msdn.microsoft.com/ko-kr/library/baketfxw.aspx의 기능을 미러링하도록 지정 하시겠습니까? – Seph
@ 셉; Stream에 .net 확장 방법을 쓰고 싶습니다. 당신이 준 링크는 문자열입니다. – Faisal