[제품종류] IEC1000Lite
[개발환경] Visual Studio 2008 C#
smartFile.Open();if (smartFile.GetStringLineCount() != 33) ----> 0개가 아닌 유효한 스트링이 있는 경우 갯수를 잘못 읽어 옴.
{
for (i = 0; i < 33; i++)
{
smartFile.WriteString_Begin(0.ToString(), i);
}
TEMPstring = 1.ToString();
smartFile.WriteString_Begin(TEMPstring, 9);
smartFile.WriteString_Begin(TEMPstring, 10);
smartFile.WriteString_Begin(TEMPstring, 25);
smartFile.WriteString_Begin(TEMPstring, 26);
smartFile.WriteString_End();
}
smartFile.ReadStringFillBuffer(); //---> 스트링 갯 수를 잘못 읽어 오니 일정 데이터 이후는 없는 것으로 판단 함.
TEMPstring = 90000.ToString();
smartFile.WriteString_Begin(TEMPstring, 0);
smartFile.WriteString_Begin(TEMPstring, 1);
smartFile.WriteString_Begin(TEMPstring, 2);
smartFile.WriteString_Begin(TEMPstring, 3);
smartFile.WriteString_Begin(TEMPstring, 16);
smartFile.WriteString_Begin(TEMPstring, 17);
smartFile.WriteString_Begin(TEMPstring, 18);
smartFile.WriteString_Begin(TEMPstring, 19);
smartFile.WriteString_End(); //---> 실제보다 적은 스트링 갯수릐 데이터를 저장
smartFile.Close();
위의 예제를 실행하면 33개의 스트링이 저장 되어야 하는데, 처음 만들어 질 때는 33개를 만드는데 나중에
GetStringLineCount()에서 잘못 읽어 오고
그와 연관 되어 ReadStringFillBuffer(); 에서도 갯수를 잘못 읽어 와서 결론적으로 데이터가 적게 저장 되는 것 같습니다.
위와 같이 분석 됩니다.
확인 부탁 드립니다.