비쥬얼 베이직 랜덤파일 에서 궁금한게 있어요
- 2015.07.28. 01:57
- 1405
이번 여름 계절에 비쥬얼베이직 교양을 들으면서 랜덤파일을 사용하는 법을 배웠습니다..
음.. 저게 정확한 명칭인진 모르겠지만 일단 ...ㅎㅎ
이왕 프로그래밍도 배웠겠다 간단하게 학점계산기를 만들어 보면 어떨까 하는 생각이 들더라구요.
각 과목의 성적을 입력하면 데이터가 랜덤파일로 저장이 되고, 또 평점 계산도 할 수 있게끔 해봤는데..
뭐 데이터 저장이나 평점 계산등은 무난히 해결했는데
랜덤 파일에서 데이터를 삭제하는 방법에 대해서는 정말 잘 모르겠네요..
사실 저 부분은 배우질 않았거든요.
그냥 간단하게 변수 = nothing이나 변수 = "" 로 해봤는데 이렇게 하면 데이터가 사라지긴 하지만 그 흔적(?)이 데이터파일에 남아서 평점계산하는 프로시저에서 오류가 나더라구요.
혹시 랜덤파일을 사용할 때 어떤 특정한 데이터를 지우는 명령어나 아니면 방법이 있나요 ??
네이버에서는 파일을 새로 만들어서 지우고자 하는 데이터만 제외하고 나머지를 복사한 뒤 다시 새로 생성한 파일의 이름을 원래 데이터파일 명으로 바꾸면 된다고 하던데.. 그것도 어떻게 해야할지 잘 모르겠네요 ..
글을 좀 알아보기 어려우실지도 모르겠습니다만 도움 부탁드립니다!
이 댓글을 삭제하시겠습니까?
[끌려다니는 밤나무]님의 댓글을 신고합니다.
랜덤파일 형식으로 레코드를 저장하는 ..?
fileopen fileget fileput fileclose 뭐 이런 명령어들 사용하는 ..
그런거요 ㅋㅋ ㅜㅜ
이 댓글을 삭제하시겠습니까?
[글쓴이]님의 댓글을 신고합니다.
이 댓글을 삭제하시겠습니까?
[끌려다니는 밤나무]님의 댓글을 신고합니다.
음 제가 인풋박스를 이용해서 일단 삭제를 원하는 데이터를 찾게하는데 까지는 잘 알겠는데.. 그 네이버에서 설명해 놓은 부분을 잘 모르겠네요..
지금 짠거는 이렇거든요
Dim search As String
search = InputBox("삭제할 과목명을 입력해 주세요.", "찾기")
For i = 1 To recCount <- recCount는 레코드의 끝 번호입니다.
FileGet(filenumber, input, i) <-filenumber는 freefile로 얻은 값이고 input은 선언한 구조체변수입니다.
If search <> Strings.Trim(input.subject) Then <-vbFixedString을 사용해서.. trim으로 공백을 지웠
FileClose(filenumber)
FileOpen(filenumber, "임시.txt", OpenMode.Random, , , recLength)
FilePut(filenumber, input, i)
FileClose(filenumber)
FileOpen(filenumber, "성적.txt", OpenMode.Random, , , recLength) <-성적은 원래 쓰던 파일입니다.
Exit Sub
End If
If i = recCount Then
MsgBox("해당하는 과목명이 없습니다.")
End If
Next
FileCopy("임시.txt", "성적.txt")
FileOpen(filenumber, "성적.txt", OpenMode.Random, , , recLength)
저 중간에 if문에서 틀린것 같긴 한데 뭘 어떻게 해야할지 잘 모르겠네요 ..
이것만 하면 나머지는 다 완성인데.. ㅜ
이 댓글을 삭제하시겠습니까?
[글쓴이]님의 댓글을 신고합니다.
이 댓글을 삭제하시겠습니까?
[끌려다니는 밤나무]님의 댓글을 신고합니다.
원래 한 두줄정도 데이터가 채워졌다면 그렇게 하고 난 뒤에는 두줄이 공백으로 생겨서 오류가 ,. ㅜ
이 댓글을 삭제하시겠습니까?
[글쓴이]님의 댓글을 신고합니다.
이 댓글을 삭제하시겠습니까?
[끌려다니는 밤나무]님의 댓글을 신고합니다.
덕분에 대충 어떻게 해야 하는지 감이 잡히네요 ㅎㅎ
지금은 머리가 안 돌아가서 내일 말씀하신 대로 해봐야겠어요
정말 감사드립니다! 복 받으세요 ㅎㅎㅎ
이 댓글을 삭제하시겠습니까?
[글쓴이]님의 댓글을 신고합니다.
이 댓글을 삭제하시겠습니까?
[끌려다니는 밤나무]님의 댓글을 신고합니다.
다시한번 조언 감사합니다 !
이 댓글을 삭제하시겠습니까?
[글쓴이]님의 댓글을 신고합니다.
이 댓글을 삭제하시겠습니까?
[끌려다니는 밤나무]님의 댓글을 신고합니다.
덕분에 자려고 누웠다가 일어나서 다시 살펴봤는데..!!
아직 깔끔하게 성공했다고는 할 수 없지만 어쨌든 데이터 지우는데 성공했어요!!!!
정말 이 늦은 새벽에 초보적인 질문 다ㅂ변 엄청 상세히 해 주셔서 감사합니다..!! ㅎㅎㅎㅎ
덕분에 새로 하나 배워가네용 ... !!
이 댓글을 삭제하시겠습니까?
[글쓴이]님의 댓글을 신고합니다.
이 댓글을 삭제하시겠습니까?
[기발한 조록싸리]님의 댓글을 신고합니다.
이 게시물을 삭제하시겠습니까?





