0
이 코드는 처음 호출 될 때만 작동합니다 (첫 번째 요소 추가). 이에 따른 통화에서 파일을 사용하여 직렬화를 수행하기 전에 stream.Position = 0
추가 한 사용자에게처음에는 이진 serializer가 작동하지 않습니다.
public void AddUser(User user)
{
FileStream stream = new FileStream(PATH_TO_LOGINS, FileMode.OpenOrCreate);
BinaryFormatter formatter = new BinaryFormatter();
List<User> users=new List<User>();
if (stream.Length > 0)
users = (List<User>) formatter.Deserialize(stream);
users.Add(user);
formatter.Serialize(stream,users);
stream.Close();
}
실제 코드를 표시하십시오. 여기서'users'는 반환하지 않는 지역 변수이므로 분명히 추가 한 사용자 만 보유 할 수 있습니다. –
그것은 내 실제 코드입니다. 유효한 사용자 객체를 매번 추가합니다. –
Surley 거기에 더 효과가있는 방법이 있습니다. – Needham