2008-11-04 27 views
8

Tôi nhận thấy ngày hôm nay rằng trong D2009 (với bản cập nhật 1), TStringStream.ReadString không di chuyển Vị trí trong Luồng nữa như được sử dụng để làm tối đa D2007.
Vì vậy, vòng lặp trên MyStringStream.ReadString (10) sẽ luôn đọc 10 ký tự đầu tiên của luồng thay vì di chuyển dọc theo và nhận được tất cả các dòng 10 ký tự bằng 10 ký tự. Tôi đã kiểm tra tài liệu, nó vẫn nói rằng ReadString sẽ di chuyển Vị trí ...
Bất kỳ ai có thể xác nhận nếu đó là lỗi trong mã D2009 hoặc nếu có thay đổi thiết kế (và lý do) và tài liệu đã lỗi thời?
Thanks ...Thay đổi hành vi cho TStringStream.ReadString trong D2009?

Cập nhật: Vấn đề báo cáo trong QC#68582

Trả lời

6

Chắc chắn là một lỗi và khả năng tương thích vỡ xấu xí. Nếu bạn kiểm tra Classes.pas, bạn sẽ thấy phiên bản Unicode và không phải Unicode của ReadString. Phiên bản không phải là Unicode đang tăng FPosition trong khi Unicode thì không. Cả D2009 và Update 1 đều hoạt động giống nhau.

Vui lòng báo cáo số điện thoại trong QC.

+0

Đã hoàn thành: QC# 68216 –

+0

Không thể tìm thấy. Tạo một cái mới: # 68582 –

Các vấn đề liên quan